通过MCP连接 →

输入计算

数学公式

广告

结果

曼哈顿距离
7
|x₂−x₁| + |y₂−y₁|
水平距离 |x₂−x₁| 3
垂直距离 |y₂−y₁| 4

什么是曼哈顿距离?

曼哈顿距离又称出租车距离、城市街区距离或 L1 距离,它衡量的是:当你只能沿水平和垂直方向移动时,两点之间究竟有多远——就像出租车在纽约曼哈顿棋盘式的街道上行驶一样。与"两点之间直线最短"的欧几里得距离不同,曼哈顿距离把水平移动和垂直移动分别累加,永远无法斜穿一个街区抄近路。

显示两点之间曼哈顿路径与直线路径的网格
曼哈顿距离沿网格线(红色)延伸,不同于直线对角线(虚线)。

如何使用本计算器

把第一个点的坐标填入 X₁ 和 Y₁,第二个点的坐标填入 X₂ 和 Y₂。计算器会立即返回曼哈顿距离的总值,同时给出水平分量和垂直分量,让你一眼看清结果是怎么算出来的。

公式详解

曼哈顿距离的定义为 $$d = \left| \text{X}_2 - \text{X}_1 \right| + \left| \text{Y}_2 - \text{Y}_1 \right|$$ 两侧的竖线表示绝对值,会去掉正负号,因此方向并不重要——无论向左还是向右,都算作正的水平位移。最后把这两个绝对差值相加即可。

Advertisement
显示两点之间水平和垂直直角边的直角三角形
该公式将两点之间的水平和垂直直角边长度相加。

实例演算

假设第一个点是 \((1, 2)\),第二个点是 \((4, 6)\)。水平差值为 \(\left| 4 - 1 \right| = 3\),垂直差值为 \(\left| 6 - 2 \right| = 4\),二者相加得 $$d = 3 + 4 = 7$$ 值得注意的是,同样这两个点的欧几里得距离是 5,可见网格的限制使出租车路径更长。

常见问题

曼哈顿距离和欧几里得距离有什么区别? 欧几里得距离是"直线最短、如鸟飞行"的路径;而曼哈顿距离只允许沿坐标轴方向移动,因此它总是大于或等于欧几里得距离。

坐标可以是负数或小数吗? 可以。公式使用的是绝对值,所以负数和小数坐标都能正常计算。

曼哈顿距离用在哪些场景? 它在机器学习(如 k 近邻、聚类分析)、国际象棋与网格寻路、图像处理,以及街道网格上的物流配送路线规划中都很常见。

最后更新: