数据结构初阶——第五节-- 顺序表和链表——总结

1. 优缺点

顺序表的优点(访问)

  1. 连续存储,便于随机访问
  2. CPU命中率高

顺序表的缺点(容量,和移动)

  1. 空间有限,需要增容,导致空间浪费
  2. 头插或者,中间删除数据,时间复杂度大

链表的优点(容量,和移动)

  1. 按需分配内存,不会存在空间浪费
  2. 可以在任意位置插入和删除数据

链表的缺点(访问)

  1. 不支持随机访问
  2. 导致缓存污染,低命中率

2. 顺序表和链表概念选择题

1.在一个长度为n的顺序表中删除第i个元素,要移动_______个元素。如果要在第i个元素前插入一个元素,要后
移_________个元素。
A n-i,n-i+1

2.取顺序表的第i个元素的时间同i的大小有关()
B 错

3.在一个具有 n 个结点的有序单链表中插入一个新结点并仍然保持有序的时间复杂度是 。
B O(n)

4.下列关于线性链表的叙述中,正确的是( )。
A 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C 进行插入与删除时,不需要移动表中的元素
D 以上说法均不正确

5.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间。
A 单链表
B 单循环链表
C 带尾指针的单循环链表
D 带头结点的双循环链表数据结构初阶——第五节-- 顺序表和链表——总结_第1张图片
考虑因素

  1. 查找指针
  2. 删除和插入的 具体步骤

6.链表不具有的特点是()。
A 插入、删除不需要移动元素
B 不必事先估计存储空间
C 可随机访问任一元素
D 所需空间与线性表长度成正比

7.在一个单链表中,若删除 P 所指结点的后续结点,则执行?
A p = p->next;p->next = p->next->next;
B p->next = p->next;
C p->next = p->next->next;
D p = p->next->next

8.一个单向链表队列中有一个指针p,现要将指针r插入到p之后,该进行的操作是____。
A p->next=p->next->next
B r->next=p;p->next=r->next
C r->next=p->next;p->next=r
D r=p->next;p->next=r->next
E r->next=p;p->next=r
F p=p->next->next

3. 期中测试例题

数据结构初阶——第五节-- 顺序表和链表——总结_第2张图片

在这里插入图片描述

  1. 以 0 0 为基础的话
    地址 = 基地址 + 【(以什么为主则选择哪个)4 * (对应相反的) 6 】 * (每个元素的大小)2
  2. 不以 0 0 为基础的话
    地址 = 基地址 + 【(以什么为主则选择哪个)(4-1) * (对应相反的) (6-1) 】 * (每个元素的大小)2

在这里插入图片描述
数据结构初阶——第五节-- 顺序表和链表——总结_第3张图片

你可能感兴趣的