计算不同长度的两个向量之间的距离
发布时间:2020-12-14 16:30:11 所属栏目:Java 来源:网络整理
导读:有不同的方法来计算两个相同长度的矢量之间的距离:欧几里德曼哈顿,汉明… 我想知道任何可以计算不同长度的向量之间的距离的方法. 解决方法 欧几里德距离公式找出了欧几里德空间中任意两点之间的距离. 欧几里德空间中的一点也被称为欧几里德矢量. 您可以使用
有不同的方法来计算两个相同长度的矢量之间的距离:欧几里德曼哈顿,汉明…
我想知道任何可以计算不同长度的向量之间的距离的方法. 解决方法
欧几里德距离公式找出了欧几里德空间中任意两点之间的距离.
欧几里德空间中的一点也被称为欧几里德矢量. 您可以使用欧氏距离公式来计算两个不同长度的向量之间的距离. 对于不同维度的矢量,适用相同的原理. 假设较低维度的向量也存在于较高维空间中.然后,您可以将较低维度向量中的所有缺少的组件设置为0,以使两个向量具有相同的维度.然后,您将使用上述任何距离公式来计算距离. 例如,考虑R 2中的成分(a1,a2)的2维向量A和R 3中的具有成分(b1,b2,b3)的3维向量B. 要在R中表达A,您可以将其组件设置为(a1,a2,0).那么,A和B之间的欧几里得距离d可以用公式: d2 = (b1 - a1)2 + (b2 - a2)2 + (b3 - 0)2 d = sqrt((b1 - a1)2 + (b2 - a2)2 + b32) 对于您的具体情况,组件将为0或1,因此所有差异将为-1,0或1.平方差仅为0或1. 如果您使用整数或单个位来表示组件,则可以使用简单的按位操作而不是某些算术(^表示XOR或排除或): d = sqrt(b1 ^ a1 + b2 ^ a2 + ... + b(n-1) ^ a(n-1) + b(n) ^ a(n)) 我们假设A的尾随组件为0,因此最终公式为: d = sqrt(b1 ^ a1 + b2 ^ a2 + ... + b(n-1) + b(n)) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |