我正在研究此代码。 但是我听不懂某些部分。
{this.state.products.map((item,i) => {
<div key={i} className="product">
})
首先,为什么该行仅在public static void d(int[] x1, int[] x2) {
int n1 = x1.length;
int n2 = x2.length;
double[][] table = new double[2][n2 + 1];
table[0][0] = 0;
for (int i = 1; i <= n2; i++) {
table[0][i] = Double.POSITIVE_INFINITY;
}
for (int i = 1; i <= n1; i++) {
table[1][0] = Double.POSITIVE_INFINITY;
for (int j = 1; j <= n2; j++) {
double cost = Math.abs(x1[i-1] - x2[j-1]);
double min = table[0][j - 1];
if (min > table[0][j]) {
min = table[0][j];
}
if (min > table[1][j - 1]) {
min = table[1][j - 1];
}
table[1][j] = cost + min;
}
double[] swap = table[0];
table[0] = table[1];
table[1] = swap;
}
System.out.println(table[0][n2]);
}
中创建“垂直2数组”?
[2][n2+1]
第二,为什么最后一行打印double[][] table = new double[2][n2 + 1];
?在dtw中,最终值table[0][n2]
不是吗?
最后,我无法理解交换。 我们为什么交换?
[n1][n2]
此代码用于查找dtw距离。