在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是()。

A:p->next=q;q->prior=p;p->next->prior=q;q->next=q; B:p->next=q;p->next->prior=q;q->prior=p;q->next=p->next; C:q->prior=p;q->next=p->next;p->next->prior=q;p->next=q; D:q->next=p->next;q->prior=p;p->next=q;p->next=q;

假设双链表结点的类型如下:
Typedef struct linknode
int data; /*数据域*/
struct linknode *llink; /*llink是指向前驱结点的指针域*/
struct linknode *rlink; /*rlink是指向后续结点的指针域*/
bnode
下面给出的算法段是要把一个q所指的新结点作为非空双向链表中的p所指结点的前驱结点插入到该双链表中,能正确完成要求的算法段是 (32)

A:q->rlink=p;q->llink=p->llink;p->llink=q;p->llink->rlink=q; B:p->llink=q;q->rlink=p;p->llink->rlink=q:q->llink=p->llink; C:q->llink=p->llink:q->rlink=p;p->llink->rlink=q;p->llink=q; D:以上都不对

在双向循环链表中,在P指针所指向的结点前插入一个指针q所指向的新结点,其修改指针的操作是()。

A:P->llink=q;q->rlink=p;P->llink->rlink=q;q->llink=p; B:P->llink=q;P->llink->rlink=q;q->rlink=p;q->llink=p->llink; C:q->rlink=p;q->liink=p->llink;P->llink->rlink=q;P->llink=q; D:q->llink=p->llink;q->rlink=p;P->llink=q;P->rlink=q;

有以下结构体说明和变量定义,如图所示, 指针p、q、r分别指向此链表中的三个连续结点。 Struct node int data; struct node *next;*p,*q,*r; 现要将q所指结点从链表中删除,同时要保持链表的连续, 以下不能完成指定操作的语句是()。

A:p->next=q->next; B:p->next=p->next->next; C:p->next=r; D:p=q->next;

双链表的每个结点包括两个指针域。其中rlink指向结点的后继,llink指向结点的前驱。如果要在p所指结点后插入q所指的新结点,下列哪一个操作序列是正确的

A:p↑.rlink↑.llink:=q; P↑.rlink:=q;q↑.llink:=p; q↑.rlink:=p↑.rlink; B:p↑.llink↑.rlink:=q; p↑.l1ink:=q;q↑.rlink:=p;q↑.llink:=p↑.llink; C:q↑.llink:=p;q↑.rlink:=p↑.rlink;p↑.rlink↑.llink:=q;p↑.rlink:=q; D:q↑.rlink:=p;q↑.llink:=p↑.llink;p↑.llink↑.rlink:=q;p↑.llink:=q;

有以下结构体说明和变量定义,如图所示: struct node {int data;struct node *next;} *p,*q,*r, 现妥将q所指结点从链表中删除,同时要保持链表的连续,以下不能完成指定操作的语句是【 】。

A:P->next=q->next; B:p->next=(p->next->next; C:p->next=r D:p=q->next;

有以下结构体说明和变量定义,如图所示: struct node {int data;struct node *next;} *p,*q,*r, 现妥将q所指结点从链表中删除,同时要保持链表的连续,以下不能完成指定操作的语句是【 】。

A:P->next=q->next; B:p->next=(p->next->next; C:p->next=r D:p=q->next;

有以下结构体说明和变量定义,如图所示: struct node {int data;struct node *next;} *p,*q,*r, 现妥将q所指结点从链表中删除,同时要保持链表的连续,以下不能完成指定操作的语句是()。

A:P->next=q->next; B:p->next=(p->next->next; C:p->next=r D:p=q->next;

有以下结构体说明和变量定义,如图所示: struct node {int data;struct node *next;} *p,*q,*r,  现妥将q所指结点从链表中删除,同时要保持链表的连续,以下不能完成指定操作的语句是()。

A:P->next=q->next; B:p->next=(p->next->next; C:p->next=r D:p=q->next;

微信扫码获取答案解析
下载APP查看答案解析