阅读下列算法,并回答问题: void fun(SeqList *L, DataType x) {int i=0,j; while (i[L-]length && x>L->data[i])i++; if(i[L-]length && x==L->data[i]) {for(j=i+1;j[L-]length;j++) L->data[j-1]=L->data[j]; L->length--;} else {for(j=L->length;j>i;j--) L->data[j]=L->data[j-1]; L->data[i]=x; L->length++; } } (1)设顺序表L=(3,7,11,14,20,51), 写出执行fun(&L,15)之后的L=(_____________) (2)设顺序表L=(4,7,10,14,20,51),写出执行fun(&L,10)之后的L= (_____________)[/i][/i][/i]
举一反三
- 已知线性表L=(21,-7,-8,19,0,-11,34,30,-10),写出执行f30(&L)后的L状态。()voidf30(SeqList*L){inti,j;for(i=j=0;ilength;i++)if(L->data[i]>=0){if(i!=j)L->data[j]=L->data[i];j++;}L->length=j;}[/i][/i] A: L=(-7,-8,0,-11,-10) B: L=(21,19,34,30) C: L=(21,19,0,34,30) D: L=(-7,-8,-11,-10)
- 删除 Status ListDelete(SqList *L,int i) { int j; if((i<1)||(i>L->length)) return ERROR; for(j=i;j<=L->length-1;j++) ___________________; _________________; return OK; }
- 【单选题】以下算法的时间复杂度() void matrimult(int a[M][N],int b[N][L],int c[M][L]) // { int i,j,k; for(i=0;i<M;i++) for(j=0;j<L;j++) c[i][j]=0; for(i=0;i<M;i++) for(j=0;j<L;j++) for(k=0;k<N;k++) c[i][j]+=a[i][k]*b[k][j]; } A. O(n*l) B. O(m*l) C. O(m*n) D. O(m*n*l)
- 以下程序的输出结果是 main() int b[3][3]=0,1,2,O,l,2,0,1,2,i,j,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++) t=t+b[i][b[j][j]]; printf("%d\n",t);[/i] A: 3 B: 4 C: 1 D: 9
- 设关系模式Rm<U,F>,其中U={H,I,J,K,L},若F={H→IJ,J→K,IJK→L,L→H,L→K},则F 的最小函数依赖集Fmin={ (1) }。关系模式R 的候选关键字有 (2) 个,R 属于 (3) 。 1() A: H→I,H→J,J→K,IJK→L,L→H B: H→I,H→J,J→K,IJ→L,L→H C: H→I,H→J,J→K,IJ→L,L→K D: H→I,J→K IJ→L,L→H,L→K