阅读下列算法,并回答问题: 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]
3,7,11,14,15,20,51#4,7,14,20,51
举一反三
- 已知线性表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
内容
- 0
下面程序的功能是完成用一元人民币换成一分、两分、五分的所有兑换方案。请填空。 #include [stdio.h] void main() { int i,j,k,l=1; for(i=0;i<=20;i++) for(j=0;j<=50;j++) { k=【1】; if(【2】) { printf(“ %2d %2d %2d “,i,j,k); l=l+1; if(l%5==0) printf(“\n”); } } }
- 1
函数ListDelete_sq实现顺序表删除算法,请在空格处将算法补充完整。 int ListDelete_sq(Sqlist *L,int i){ int k; if(i<1||i>L->length) return ERROR; for(k=i-1;klength-1;k++) L->slist[k]=L->slist[k+1]; ; return OK; }
- 2
以下算法中m++;语句的执行次数为()。 int m=0, i, j; for(i=l;i<=n;i++) for(j=1;j<=2 * i;j++) m++;
- 3
DAG图最长路的反推关系是 L(i) = 1 + max {L(j) : (i, j) 为边}
- 4
中国大学MOOC: nums = [2, 7, 11, 15, 1, 8]l1 = []l = len(nums)for i in range(0, l-1): for j in range(i+1,l): if nums[i] + nums[j] == 9: n = (nums[i], nums[j]) l1.append(n)print(l1)