线性表中常考题型其中一种,就是在特定条件下,选择最省时间的存储方式。就需要具体情况具体分析,本质上来说,还是考察线性表各类型的特点。以下列举出常见的考题,并给出分析,供复习使用。
1.若某线性表最常用的操作是存取任一指定序号的元素和在表尾进行插入和删除运算,则利用( )存储方式最节省时间。
A.顺序表 B.双向链表 C.带头结点的双向循环链表 D.单循环链表
2. 某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用( )存储方式最节省运算时间。 A.单链表 B.仅有头指针的单循环链表 C.双链表 D.仅有尾指针的单循环链表
3.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
A. 单链表 B.单循环链表 C. 带尾指针的单循环链表 D. 带头结点的双循环链表
4.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点。则采用( )存储方式最节省运算时间。
A.单链表 B.双链表 C.单循环链表 D.带头结点的双循环链表
1.A 注意顺序表的特性,随机存取。另外在表尾删除,顺序表最后一个元素删除不需要移动元素。
2.D 链表特点,插入删除方便,修改指针即可。但注意,在最后一个元素插入删除,有顺序表就选顺序表,没有顺序表,选链表就选带尾指针的,因为链表也需要从头结点遍历到尾节点,因此带尾指针的单循环链表最省时间。
3.D 链表操作,末尾插入删除,选择带尾指针的单循环链表的话,插入操作得遍历一遍;选择带头结点的双循环链表,前后都能到达,时间复杂度O(1).
4.D 最后一个结点后插入删除,跟3类似。