我听不懂动态时间规整代码

时间:2019-11-30 14:18:18

标签: java algorithm dtw

我正在研究此代码。 但是我听不懂某些部分。

{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距离。

0 个答案:

没有答案