曼哈顿距离计算公式

曼哈顿距离计算公式,第1张

曼哈顿距离计算公式:d(i,j)=|xi-xj|+|yi-yj|。

曼哈顿距离是由十九世纪的赫尔曼·闵可夫斯基所创词汇,是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总和。

曼哈顿距离不是距离不变量,当坐标轴变动时,点间的距离就会不同。曼哈顿距离示意图在早期的计算机图形学中,屏幕是由像素构成,是整数,点的坐标也一般是整数,原因是浮点运算很昂贵,很慢而且有误差。

如果直接使用AB的欧氏距离,则必须要进行浮点运算,如果使用AC和CB,则只要计算加减法即可,这就大大提高了运算速度,而且不管累计运算多少次,都不会有误差。

曼哈顿距离是两点在南北方向上的距离加上在东西方向上的距离,主要用来计算两个点在标准坐标系上的绝对轴距总和。计算公式是d(i,j)=|xi-xj|+|yi-yj|。曼哈顿距离具有非负性、同一性、对称性、三角不等式等数学性质。

要注意的是,曼哈顿距离依赖坐标系统的转度,而非系统在坐标轴上的平移或映射。

def My_abs(num):

if num <0:

num *= -1

return num

print(abs(-5))

x1,y1=eval(input("输入A点坐标,以逗号分隔:"))

x2,y2=eval(input("输入B点坐标,以逗号分隔:"))

# 计算曼哈顿距离的函数

def getManhattanDistance(x1, y1, x2, y2):

return My_abs(x1 - x2) + My_abs(y1 - y2)

# 调用并输出计算的曼哈顿距离

print(getManhattanDistance(x1, y1, x2, y2))

abs在Python中有了,然后我就命名成了My_abs。

备注也都打好了。

折柳成荫写的是C,soulofbug写的是python


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8070796.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存