函数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;
}
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;
}
举一反三
- 删除 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; }
- 函数实现单链表的删除算法,请在空格处将算法补充完整。int ListDelete(LinkList L,int i,ElemType *s){LNode *p,*q;int j;p=L;j=0;while(((1) )&&(j
- 函数GetElem实现返回单链表的第i个元素,请在空格处将算法补充完整。 int GetElem(LinkList L,int i,Elemtype *e){ LinkList p;int j;p=L->next;j=1; while(p&&j
- 分析以下代码的时间复杂度: int func(int n) { int i=1, k=0; while(i<=n) { k++; i=i*2; } return k; }
- 阅读下列算法,并回答问题: 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]