问题 填空题

[说明] 试从含有n个int 型数的数组中删去若干个成分,使剩下的全部成分构成一个不减的子序列。设计算法和编写程序求出数组的不减子序列的长。 [C++ 程序] #include<stdio.h> #define N 100 int b[]={9,8,5,4,3,2,7,6,8,7,5,3,4,5,9,1}; int a [N]; #define n sizeofb/sizeofb[0] void main ( ) { kit k,i,j; (1) (2) for (i=1;i<n; i++ ) { for ( j=k; (3) ; j--); (4) ; /*长为 j+1 的子序列的终元素存储在 a[j+1]*/ if ( (5) k++; /*最长不减子序列长 k 增1*/ } printf ( "K = %d\n ",k ); }

答案

参考答案:(1)a[1] =b[0] (2) k=1

解析:(3) j>1&&a[j]>b[i] (4)a[j+1]=b[i] (5) j==k

选择题
选择题