在单链表L中,指针p所指结点有后继结点的条件是()。
A.p=p.next
B.p.next!=null
C.p.next=null
D.p.next=p.next.next
A.p=p.next
B.p.next!=null
C.p.next=null
D.p.next=p.next.next
A.q—>next=s—>next;s—>next=p;
B.s—>next=P;q—>next=s—>next;
C.p—>next=s—>next;s—>next=q;
D.s—>next=q;p—>next=s—>next;
非空的循环单链表head的尾结点(由指针p所指)满足()
A.p—>next=NULL
B.p=NULL
C.p—>next=head
D.p=head
在一个单链表中,已知q所指结点是p所指结点的直接前趋,若在p,q之间插入s结点,则执行()操作。
A.s—>next=p—>next;p—>next=s;
B.q—>next=s;s—>next=p;
C.p—>next=s—>next;s—>next=p;
D.p—>next=s;s—>next=q;
A.p—>next==head
B.p—>next—>Next==head
C.p—>next==NULL
D.p==head
已知P结点是某双向链表的中间结点,试从下列提供的答案中选择合适的语句序列。
a.在P结点后插入S结点的语句序列是________。
b.在P结点前插入S结点的语句序列是________。
c.删除P结点的直接前驱结点的语句序列是________。
d.删除P结点的直接后继结点的语句序列是________。
e.删除P结点的语句序列是________。
(1) P->next=P->next->next;
(2) P->prio u=P->prio u->prio u;
(3) P->next=S;
(4) P->prio u=S;
(5) S->next=P;
(6) S->prio u=P;
(7) S->next=P->next;
(8) S->prio u=P->prio u;
(9) P->prio u->next=P->next;
(10) P->prio u->next=P;
(11) P->next->prio u=P;
(12) P->next->prio u=S;
(13) P->prio u->next=S;
(14) P->next->prio u=P->prio u;
(15) Q=P->next;
(16) Q-P->prio u;
(17) free(P) ;
(18) free(Q) ;
假设在算法描述语言中引入指针的二元运算“异或”,若a和b为指针,则的运算结果仍为原指针类型,且
则可利用一个指针域来实现双向链表L。链表L中的每个结点只含两个域:data域和LRPtr域,其中L RPtr域存放该结点的左邻与右邻结点指针(不存在时为NULL) 的异或。若设指针L.Left指向链表中的最左结点,L.Right指向链表中的最右结点, 则可实现从左向右或从右向左遍历此双向链表的操作。试写一算法按任一方向依次输出链表中各元素的值。
向一个栈顶指针为Top的链栈中插入一个s所指结点时,其操作步骤为()
A.Top—>next=s;
B.s—>next=Top—>next;Top—>next=s;
C.s—>next=Top;top=s;
D.s—>next=Top; Top=Top—>next;