更多"在单链表中设置头结点的作用是()。"的相关试题:
[单项选择]在一个单链表中,若q结点是p结点的前驱结点,若在q与p之间插入结点s,则执行( )。
A. s→link=p→dink; p→link=s
B. p→link=s; s→link=q
C. p→link=s→4ink; s→link=p
D. q→link=s; s→link=p
[单项选择]在一个单链表中p所指结点之后插入一个s所指的结点时,可执行()。
A. p=s->next
B. p->next=s;s->next=p->next
C. p->next=s->next;
D. s->next=p->next;p->next=s;
[填空题] 下列算法将单链表中值重复的结点删除,使所得的结果表中各结点值均不相同,试完成该算法。 void DelSameNode(LinkList L) //L是带头结点的单链表,删除其中的值重复的结点// {ListNode * p,*q,*r; p=L->next; //p初始指向开始结点// while(p){ //处理当前结点p// q=p; r=q->next; do { //删除与结点*p的值相同的结点// while(r&&r->data!=p->data){ q=r; r=r->next; } if(r){ //结点*r的值与*p的值相同,删除*r// q->next=r->next; free(r); r=(); } }while( r ); p=p->next; } }
[填空题]对于一个单链表,在表头插入结点的时间复杂度为()在表尾插入元素的时间复杂度为()。
[填空题]在一个单链表中p所指结点之后插入一个s所指结点时,应执行()和p->next=s;的操作。
[单项选择]在一个单链表中p指向结点a,q指向结点a的直接后继结点b,要删除结点b,可执行()。
A. p->next=q->next;
B. p=q->next;
C. p->next=p;
D. p->next=q;
[单项选择]单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针p指向的单链表结点之后,下面的操作序列中哪一个是正确的?
A. q:=p^.link;p^.link:=q^.link;
B. p^.link:=q^.link;q:=p^.link;
C. q^.link:=p^.link;q^.link:=q;
D. p^.link:=q; q^.link:=p^.link;
[单项选择]单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插人到指针p指向的单链表结点之后,下面的操作序列中哪一个是正确的
A. q:=p^. link; p^.Link:=q^.link;
B. p^.link:=q^.1ink; q:=p^.1ink;
C. q^.link:=p^.link; p^.1ink:=q;
D. p^.1ink:=q; q^.link:=p^.link;
[单项选择]非空的循环单链表head的尾结点(由p所指向),满足 ( )
A. p->next==NULI
B. p==NULL
C. p->next=head
D. p=head