曼哈顿距离与切比雪夫距离

概念辨析

1、数学中最常见的欧氏距离

2、曼哈顿距离

他表示的点如下图

 

3、切比雪夫距离

他表示的点如下图

由图可以感觉曼哈顿距离和切比雪夫距离有一定的相似性

 

曼哈顿距离和切比雪夫距离的转化(45度旋转)

看着有点繁琐。

事实上:

将一个点 ( x , y ) 的坐标变为 ( x + y , x − y ) 后,原坐标系中的曼哈顿距离  =  新坐标系中的切比雪夫距离

将一个点 ( x , y ) 的坐标变为 ( (x + y )/ 2 , ( x - y ) / 2 )  后,原坐标系中的切比雪夫距离  =  新坐标系中的曼哈顿距离 (由上一行式子逆推)。

 

作用

在代码程序中我们要求切比雪夫距离时往往要进行 max 操作 , 这对于程序来说并不好优化 ,例如:对于一点来说,我们要求它到其余点的切比雪夫距离 和。此时的暴力的时间复杂度为O(n^2)。

而曼哈顿距离 只有求和和取绝对值两种操作 , 我们把坐标排序后可以去掉绝对值的影响,进而用前缀和优化,可以把复杂度降为 O ( n )。

posted @   黑屿白  阅读(58)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示