1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
int (int a,int b) { return a>b?a:b; }
int main() { char x[8] = {'A','B','C','B','A','C','B','A'}; char y[6] = {'B','D','C','A','B','A'}; int child[9][7]; for(int i = 0;i < 9;i++) { for(int j = 0;j < 7;j++) { child[i][j] = 0; } } for(int i = 1;i < 9;i++) { for(int j = 1;j < 7;j++) { if(x[i] == y[j]) { child[i][j] = child[i-1][j-1]+1; } else { child[i][j] = getMax(child[i-1][j],child[i][j-1]); } } }
printf("最长公共子序列的长度是:%d",child[8][6]); return 0; }
|
近期评论