| Init_cumulative_and_trace_matrix | | Input: series A and B, oba, obb | | Return: D: cumulative distance matrix | | K: traceback index matrix | (1) | allocate cumulative distance matrix D[A.length, B.length] | (2) | allocate traceback matrix K with same size to D | (3) | D[0, 0] = local_distance(A[0], B[0]) | (4) | for i in 1 … A.length-1 | (5) | K[i,0], D[i, 0] = (0,0), local_distance(A[i], B[0]) | (6) | for j in 1 … B.length-1 | (7) | K[0,j], D[0, j] = (0,0), local_distance(A[0], B[j]) | (8) | if not oba: # use cumulative distance for series A | (9) | for i in 1 … A.length-1 | (10) | K[i, 0], D[i, 0] = (i − 1, 0), D[i − 1, 0] +D[i, 0] | (11) | if not obb: # use cumulative distance for series B | (12) | for j in 1 … B.length-1 | (13) | K[0, j], D[0, j] = (0, j − 1), D[0, j − 1] +D[0, j] | (14) | return D, K |
|