
问题:
[填空题] 函数GetElem实现返回单链表的第i个元素,请在空格处将算法补充完整。 int GetElem(LinkList L,int i,Elemtype *e){ LinkList p;int j;p=L->next;j=1; while(p&&ji)return ERROR;*e= (2) ;return OK;}
问题:
[填空题] 函数实现单链表的插入算法,请在空格处将算法补充完整。int ListInsert(LinkList L,int i,ElemType e){LNode *p,*s;int j; p=L;j=0; while((p!=NULL)&&(jnext;j++; } if(p==NULLj>i-1) return ERROR; s=(LNode *)malloc(sizeof(LNode)); s->data=e; (1) ; (2); return OK;}/*ListInsert*/
问题:
[填空题] 函数ListDelete_sq实现顺序表删除算法,请在空格处将算法补充完整。int ListDelete_sq(Sqlist *L,int i){int k;if(iL->length) return ERROR;for(k=i-1;klength-1;k++) L->slist[k]=(1); (2) ; return OK;}
问题:
[填空题] 函数实现单链表的删除算法,请在空格处将算法补充完整。int ListDelete(LinkList L,int i,ElemType *s){LNode *p,*q;int j;p=L;j=0;while(((1) )&&(jnext;j++;}if(p->next==NULLj>i-1) return ERROR;q=p->next; (2);*s=q->data;free(q);return OK;}/*listDelete*/
问题:
[填空题] 写出算法的功能。int L(head){ node * head; int n=0; node *p; p=head; while(p!=NULL) { p=p->next; n++; } return(n); }
问题:
[问答题,简答题] 编写算法,实现带头结点单链表的逆置算法。
问题:
[问答题,简答题] 有两个循环链表,链头指针分别为L1和L2,要求写出算法将L2链表链到L1链表之后,且连接后仍保持循环链表形式。
问题:
[问答题,简答题] 设一个带头结点的单向链表的头指针为head,设计算法,将链表的记录,按照data域的值递增排序。
问题:
[问答题,简答题] 编写算法,将一个头指针为head不带头结点的单链表改造为一个单向循环链表,并分析算法的时间复杂度。