考虑上一个问题中给出的数据。可以使用数组L [M,N]根据上面给出的形式的l(i,j)的正确递归定义,通过动态编程来获得l(i,j)的值,其中数组L [M,N],其中M = m + 1 N = n + 1,因此L [i,j] = l(i,j)。
关于l(i,j)的递归定义的动态编程解决方案,以下哪一项陈述是正确的?
(A)为了正确计算l(i,j)的值,应将所有元素L初始化为0。
(B) l(i,j)的值可以按L(M,N)的行主序或列主序计算
(C)无法以L(M,N)的行主要顺序或列主要顺序计算l(i,j)的值
(D)如果p
说明:该值可以按行主顺序或列主顺序计算,请参见https://www.geeksforgeeks.org/dynamic-programming-set-4-longest-common-subsequence/。
我们可以交换两个循环而不会影响输出。
这个问题的测验