设单循环链表中结点的结构为(data,link),且rear是指向非空的带表头结点的单循环链表的尾结点的指针。若想删除链表第一个结点,则应执行下列哪一个操作()。A.s=rear;rear=rear->link;deletes;B.rear=rear->link;deleterear;C.rear=rear->link->link;deleterear;D.s=rear->link->link;rear->link->link=s->link;deletes;s为第一个结点硫
设单循环链表中结点的结构为(data,link),且rear是指向非空的带表头结点的单循环链表的尾结点的指针。若想删除链表第一个结点,则应执行下列哪一个操作()。
A.s=rear;rear=rear->link;deletes;
B.rear=rear->link;deleterear;
C.rear=rear->link->link;deleterear;
D.s=rear->link->link;rear->link->link=s->link;deletes;s为第一个结点硫
B.rear=rear->link;deleterear;
C.rear=rear->link->link;deleterear;
D.s=rear->link->link;rear->link->link=s->link;deletes;s为第一个结点硫
参考解析
解析:若要删除结点需要改变尾指针的指向。
相关考题:
●设rear是指向非空带头结点的循环单链表的尾指针,则删除链表第一个结点的操作可表示为 (22) 。(22) A.p=rear;rear=rear→next;free(p);B.rear=rear→next;free(p);C.rear=rear→next→next;free(p);D.p=rear→next→next;rear→next=p→next;free(p);
若某线性表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用哪一种存储结构算法的时间效率最高?() :A单链表B给出表头指针的单循环链表C双向链表D给出表尾指针的双向循环链表
在长度为n的()上删除第一个元素,其算法的时间复杂度为O(n)。 A.只有表头指针的不带表头结点的循环单链表B.只有表尾指针的不带表头结点的循环单链表C.只有表尾指针的带表头结点的循环单链表D.只有表头指针的带表头结点的循环单链表
某单循环链表头指针为head且表长大于1,指针p指向表中某个结点,若p→next→next= head,则(11)。A.p指向头结点B.p指向尾结点C.*p的直接后继是头结点D.*P的直接后继是尾结点
程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、P、q、均已正确定义,并用于指向链表结点,指针变量s总是作为头指针指向链表的第一个结点。该程序段实现的功能是( )。A.首结点成为尾结点B.尾结点成为首结点C.删除首结点D.删除尾结点
若栈采用链式存储且仅设头指针,则( )时入栈和出栈操作最方便。A.采用不含头结点的单链表且栈顶元素放在表尾结点B.采用不含头结点的单链表且栈顶元素放在表头结点C.采用含头结点的单循环链表且栈顶元素随机存放在链表的任意结点D.采用含头结点的双向链表且栈顶元素放在表尾结点
单选题设单循环链表中结点的结构为(data,link),且first为指向链表表头的指针,current为链表当前指针,在循环链表中检测current是否达到链表表尾的语句是()。Acurrent-link=nullBfirst-link=currentCfirst=currentDcurrent-link=first
单选题若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用()存储方式最节省运算时间。A单链表B双链表C带尾指针的单循环链表D带头结点的双循环链表