重点简要:
1、头插法(新结点在第一的位置)、尾插法(新结点在终端结点的后面)。
2、线性表的整表删除:要用到p、q转移数据。
3、单链表结构与顺序存储结构各有其优缺点,要根据实际情况来确定。
4、静态链表(数组)
(1)第一和最后的元素不存数据,未被使用的数组元素称为备用链表。
(2)数组第一个元素的cur存放备用链表的第一个结点的下标。
(3)数组的最后一个元素的cur存放第一个有数值的元素的下标,相当于头结点。
(4)当链表为空时,则为0。
(5)若某个位置的下一个位置数据为空,那么这个位置的cur为0。
(6)Cur相当于next,地址就是数组的下标。
5、静态链表的插入操作:新数据要插到第 i 个位置,则将数据插入到数组后面,但是,cur要与第 i 个位置的cur交换。
6、静态链表的删除操作:free()释放结点。
7、静态链表的优缺点根据需要而定。
8、循环链表:头尾相连。
9、双向链表:在单链表的每个结点中再加上一个前驱结点的指针域。
(1)添加操作:s为新结点
s->prior=p;
s->next=p->next;
p->next->prior=s;
p->next=s;
(2)删除操作:删除p结点
p->prior->next=p->next;
p->next->prior=p->prior;
free(p);