1. 程式人生 > >歐幾里得距離、曼哈頓距離和切比雪夫距離

歐幾里得距離、曼哈頓距離和切比雪夫距離

定義:

1. 歐幾里得距離

公式(n維空間下)

二維:dis=sqrt( (x1-x2)^2 + (y1-y2)^2 )

三維:dis=sqrt( (x1-x2)^2 + (y1-y2)^2 + (z1-z2)^2 )

2.曼哈頓距離:兩個點在標準座標系上的絕對軸距總和

dis=abs(x1-x2)+(y1-y2)

3.切比雪夫距離:各座標數值差的最大值

dis=max(abs(x1-x2),abs(y1-y2))

曼哈頓距離與切比雪夫距離的關係:

兩者的定義看上去好像沒有關係,但實際上,這兩種距離可以相互轉化!

我們考慮最簡單的情況,在一個二維座標系中,設原點為(0,0)

如果用曼哈頓距離表示,則與原點距離為11的點會構成一個邊長為1的正方形

如果用切比雪夫距離表示,則與原點距離為1的點會構成一個邊長為2的正方形

仔細對比這兩個圖形,你會發現什麼? 額(⊙o⊙)…

第二個影象是由第一個影象放大兩倍後旋轉45°得到的!沒錯,就是這樣!

然後根據向量矩陣座標三角換元什麼亂七八糟的可以得到

第一個圖中的點(x,y)對應第二個圖中的點( (x+y)/2,(x-y)/2)         非常有用!!!

這樣我們就可以將其進行互相轉換了!

例題: