2.7 PTA题目总结

(一)线性表

1.擅长存取任一指定序号的元素+对第一个和最后一个元素插入删除

2.支持随机存取

3.插入和删除元素时,移动元素的个数与该元素的位置有关

4.逻辑上相邻的元素,其物理位置必定相邻

5.插入:1≤i≤n+1,移动n-i+1个元素

6.删除:移动n-i个元素

(二)单链表

1.(❌)将N个数据按照从小到大顺序组织存放在一个单向链表中。如果采用二分查找,那么查找的平均时间复杂度O(logN)

🍂数组二分查找的平均复杂度是O(logN),链表的遍历只能是从第一个往后,所以二分查找法不能用于链表结构。

2.设h为不带头结点的单向链表。在h的头上插入一个新结点t的语句是:t->next=h; h=t;

3.创建一个包括n个结点的有序单链表的时间复杂度是O(n2​​)

🌰每生成一个新的结点,都要遍历比较之后再插入

(三)循环链表、双向链表、静态链表

1.(❌)在一个设有头指针和尾指针的单链表中,执行删除该单链表中最后一个元素的操作与链表的长度无关

 🌰还要遍历一次,找到倒数第二个元素,当成尾指针

2.

将线性表La和Lb头尾连接,要求时间复杂度为O(1),且占用辅助空间尽量小。应该使用哪种结构?

A 单链表

B 单循环链表

C 带尾指针的单循环链表

D 带头结点的双循环链表

3.如果对线性表的运算只有2种,即删除第一个元素,在最后一个元素的后面插入新元素,则最好使用(只有表尾指针没有表头指针的循环单链表):尾指针的下一个就是头指针鸭!

 

 

posted @ 2020-10-03 16:49  ananasaa  阅读(1670)  评论(0编辑  收藏  举报