概念辨析
1、数学中最常见的欧氏距离
2、曼哈顿距离
他表示的点如下图
3、切比雪夫距离
他表示的点如下图
由图可以感觉曼哈顿距离和切比雪夫距离有一定的相似性
曼哈顿距离和切比雪夫距离的转化(45度旋转)
看着有点繁琐。
事实上:
将一个点 ( x , y ) 的坐标变为 ( x + y , x − y ) 后,原坐标系中的曼哈顿距离 = 新坐标系中的切比雪夫距离
将一个点 ( x , y ) 的坐标变为 ( (x + y )/ 2 , ( x - y ) / 2 ) 后,原坐标系中的切比雪夫距离 = 新坐标系中的曼哈顿距离 (由上一行式子逆推)。
作用
在代码程序中我们要求切比雪夫距离时往往要进行 max 操作 , 这对于程序来说并不好优化 ,例如:对于一点来说,我们要求它到其余点的切比雪夫距离 和。此时的暴力的时间复杂度为O(n^2)。
而曼哈顿距离 只有求和和取绝对值两种操作 , 我们把坐标排序后可以去掉绝对值的影响,进而用前缀和优化,可以把复杂度降为 O ( n )。
标签:曼哈顿,比雪夫,距离,与切,坐标,复杂度,坐标系 From: https://www.cnblogs.com/purple123/p/18327088