解决方法
欧几里德距离公式找出了欧几里德空间中任意两点之间的距离.
欧几里德空间中的一点也被称为欧几里德矢量.
您可以使用欧氏距离公式来计算两个不同长度的向量之间的距离.
对于不同维度的矢量,适用相同的原理.
假设较低维度的向量也存在于较高维空间中.然后,您可以将较低维度向量中的所有缺少的组件设置为0,以使两个向量具有相同的维度.然后,您将使用上述任何距离公式来计算距离.
例如,考虑R 2中的成分(a1,a2)的2维向量A和R 3中的具有成分(b1,b2,b3)的3维向量B.
要在R中表达A,您可以将其组件设置为(a1,a2,0).那么,A和B之间的欧几里得距离d可以用公式:
d² = (b1 - a1)² + (b2 - a2)² + (b3 - 0)² d = sqrt((b1 - a1)² + (b2 - a2)² + b3²)
对于您的具体情况,组件将为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))