important points of linked list and stacks

带表头节点的好处?

处理空表和非空表统一。


rear

是指向非空带头结点的循环单链表的尾指针,则删除表首结点的操作可表示为

( B  ) 

A

p

rear;                            B

p= rear->next->next; 

Rear=rear->next;                       rear->next->next

p->next; 

free(p);                               free(p); 

C

rear:=rear->next->next;             D

rear

rear->next 

free(rear);                            free(rear)

设rear是指向非空带头结点的循环单链表的尾指针,则删除表首结点的操作可表示为( B  ) 
A)p=rear;                            B)p= rear->next->next; 
Rear=rear->next;                       rear->next->next=p->next; free(p);                               free(p); 
C)rear:=rear->next->next;             D)rear=rear->next free(rear);                            free(rear);


最常用操作是在最后一个元素之后插入一个元素和删除最后一个元素,则用(  B   )存储方式最佳。 

A)单链表     B)双链表   C)单循环链表    D)带头结点的双循环链表  



指针p1和p2分别指向两个无头结点的非空单循环链表中的尾结点,要将两个链表链接成一个新的单循环链表,应执行的操作为( D  ) 
A)p1->next=p2->next;p2->next=p1->next;     

B)p2->next=p1->next;p1->next=p2->next; 

C)p=p2->next; p1->next=p;p2->next=p1->next; 

D)p=p1->next; p1->next= p2->next;p2->next=p;



对于一个具有n个结点的单链表,在已知的结点*p后插入一个新结点的时间复杂度为(   O(1)     ),在给定值为x的结点后插入一个新结点的时间复杂度为(   O(n)     )。 


设长度为n的链队列用只设尾指针的单循环链表表示,则出队操作的时间复杂度为(   O(1)     ),若用只设头指针的单循环链表表示,则出队操作的时间复杂度为(    O(1)    )。


非空循环单链表head的尾结点(由p所指向),满足条件(  p->next=head      ) 


已知链表结点定义如下,每个字符占1个字节,指针占4个字节,则该链表的存储密度是(   80%     )。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值