news 2026/4/25 18:12:23

曼哈顿距离相似算法:从城市街道到数据空间

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
曼哈顿距离相似算法:从城市街道到数据空间
曼哈顿相似性算法,也称为曼哈顿距离或L1距离,是一种衡量两个点在网格状空间中差异的度量方法。它模拟了在曼哈顿这样的城市中,只能沿着街道网格移动而无法直线穿越的路径长度2,因此得名。与欧几里得距离不同,曼哈顿距离不考虑对角线移动的可能性,而是将移动限制在垂直和水平方向上,这使得它在特定场景下具有独特优势。

一、什么是曼哈顿距离?

曼哈顿距离,也称作城市街区距离L1距离,是两点在标准坐标系上的绝对轴距之和

简单来说,想象你在一个规划整齐的棋盘式城市(比如曼哈顿)里,你不能斜着穿过建筑街区,只能沿着街道行走。那么,从一点到另一点的最短路径,就是沿着垂直的街道走,其行走的总距离就是曼哈顿距离。

三、一个简单的例子

假设我们在一个二维网格上有两个点:

  • 点 A 的坐标是 (1, 1)
  • 点 B 的坐标是 (4, 5)

那么,A 和 B 之间的曼哈顿距离计算如下:

d = |1 - 4| + |1 - 5| = | -3 | + | -4 | = 3 + 4 = 7

这意味着,如果你从A点出发,只能水平或垂直移动,到达B点最少需要走7个单位长度。

四、与欧几里得距离的对比

为了更好地理解曼哈顿距离,我们经常将它和我们最熟悉的欧几里得距离(即直线距离)进行比较。

特征

曼哈顿距离

欧几里得距离

定义

绝对轴距之和

两点间的直线距离

公式

几何意义

只能沿坐标轴方向移动的路径长度

“最短路径”或“乌鸦飞行的距离”

别称

L1距离、城市街区距离

L2距离

值的大小

在同一组点中,曼哈顿距离通常大于或等于欧氏距离

在同一组点中,欧氏距离通常小于或等于曼哈顿距离

继续上面的例子:

  • A(1,1), B(4,5)
  • 曼哈顿距离= 7

可以看到,曼哈顿距离(7)确实大于欧氏距离(5)。

五、应用场景

曼哈顿距离因其独特的性质,在许多领域有广泛应用:

  1. 城市规划与交通导航
  2. 在棋盘式道路布局的城市中,计算两点间的实际驾驶或步行距离非常有用。计算机科学
    1. 数据结构与算法:在棋盘类游戏(如八数码、国际象棋)中,常用曼哈顿距离作为启发式搜索(如A*算法)的评估函数。
    2. 图像处理:在数字图像中,像素点位于网格上,曼哈顿距离常用于计算两个像素之间的差异,或进行形态学操作。
  3. 数据挖掘与机器学习
    1. 在聚类算法(如K-Means)和分类算法(如K-近邻算法K-NN)中,曼哈顿距离可以作为一种距离度量。当数据特征在高维空间中具有高度相关性时,使用曼哈顿距离有时能比欧氏距离获得更好的效果,因为它对异常值不那么敏感。
  4. 其他领域
    1. 在电路设计(如VLSI布局布线)中,连接元件的导线通常只能水平和垂直走线,此时线长就是曼哈顿距离。

六、可视化:等距离线

一个有趣的方式来理解不同距离度量是观察它们的“等距离线”——即到中心点距离相等的所有点构成的图形。

  • 曼哈顿距离的等距离线:是一个旋转了45度的正方形(菱形)。
  • 欧几里得距离的等距离线:是一个标准的圆形

总结

曼哈顿距离是一个直观且计算简便的距离度量方式,它描绘了一个在网格状约束下的世界。虽然它不是空间中最短的物理路径,但在许多现实世界和计算问题中,它比欧几里得距离更能准确地反映实际的“成本”或“距离”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 2:22:41

《自指隐》

《自指隐》一隐藏于无始 菩提影碎镜痕空 自指幽玄未示踪 不立菩提非毁镜 无痕大冶隐炉风二隐藏于万象 青山不语即说法 流水无形已演宗 一叶飘零藏宇宙 微尘旋转隐时空三隐藏于作用 剑刃光寒不显锋 弦音妙处本无宫 行云施雨皆潜化 余照山河在暗中四隐藏于相见 见面不识真面目 闻…

作者头像 李华
网站建设 2026/4/25 1:13:23

《余行论·通约篇》——东西方追寻的自指同归

引言:人类的双重追寻在人类精神演化的宏大图景中,两条追寻之路平行延展了数千年:东方贤哲向内探求心性本源,西方智者向外探索宇宙规律。表面上,这两条道路南辕北辙——一者重直觉体悟,一者重理性分析&#…

作者头像 李华
网站建设 2026/4/25 5:52:12

计算机毕设java人生感悟总结分享与遗嘱设立系统 基于Java的个人成长与人生规划管理系统 Java驱动的人生回顾与未来规划综合平台

计算机毕设java人生感悟总结分享与遗嘱设立系统7s7l69(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着社会的快速发展和人们生活水平的不断提高,越来越多的人开始…

作者头像 李华
网站建设 2026/4/24 20:49:10

Pts物理引擎实战:从零构建动态粒子世界

你是否曾想过,如何在网页上创造出令人惊叹的物理效果?当粒子在屏幕中自由飞舞、相互碰撞时,那种动态的美感是如何实现的?今天,就让我们一同探索Pts物理引擎的奥秘,亲手打造一个充满活力的粒子世界&#xff…

作者头像 李华
网站建设 2026/4/25 17:38:17

P2PK:比特币的「原始密码锁」与比特鹰的技术考古

在比特币的创世纪元,中本聪用一行代码构建了最早的交易验证系统——P2PK(Pay To Public Key) 。这个直接支付到公钥的脚本,如同区块链世界的「楔形文字」,记录着加密货币最初的信任逻辑。比特鹰将带您穿透时间迷雾&…

作者头像 李华