计算4维向量之间的欧几里德距离

时间:2014-04-29 01:30:50

标签: math vector dimension euclidean-distance

假设我有两个四维向量(即a和b)如下:

a = {a1, a2, a3, a4}
b= {b1, b2, b3, b4}

如何计算这些向量之间的欧几里德距离?

2 个答案:

答案 0 :(得分:17)

欧几里德距离演算与尺寸无关。

在你的情况下,a和b之间的欧几里德距离可以写成:d(a,b)= sqrt(sum_ {i = 1} ^ {4}(a [i] - b [i])^ 2)。

或者,更具体地:d(a,b)= sqrt((a1-b1)^ 2 +(a2-b2)^ 2 +(a3-b3)^ 2 +(a4-b4)^ 2)。

答案 1 :(得分:5)

public static float ndistance(float[] a, float[] b) {
    float total = 0, diff;
    for (int i = 0; i < a.length; i++) {
        diff = b[i] - a[i];
        total += diff * diff;
    }
    return (float) Math.sqrt(total);
}

上面的函数/方法/代码将计算n维空间中的距离。 a和b是浮点数的数组,并且具有相同的长度/大小或简单地为n。由于您需要4维,因此您只需传递一个表示4-D向量数据的4长度数组。