线性表的理论知识总结

大佬其实总结的很完善了,先查看大佬的总结:

数组:https://mp.weixin.qq.com/s/X7R55wSENyY62le0Fiawsg

链表:https://mp.weixin.qq.com/s/ntlZbEdKgnFQKZkSUAOSpQ

有几个小问题补充一下:

  (1)数组下标为什么从0开始:为了方便地址计算,比如知道数组首地址,如果从0开始,则a[i]的地址=首地址+i*每个数据所占的长度;如果从1开始,则a[i]的地址= 首地址 + (i-1)*每个数据所占的长度

  (2)链表的头指针:链表中第一个节点的存储位置。

  (3)链表的头结点:为了更加方便的对链表进行操作,在单链表的第一个节点前附设一个结点成为头结点。头结点方便插入和删除操作,将第一个结点的插入删除操作统一。

  (4)若链表有头结点,则头指针是指向头结点的指针。

  (5)若线性表需要频繁查找,很少进行插入和删除操作时,宜采用顺序存储结构。若需要频繁插入和删除时,宜采用单链表结构。

  (6)双向链表的插入操作口诀:先搞定插入结点的前驱和后继,再搞定后结点的前驱,最后解决前结点的后继。

原文地址:https://www.cnblogs.com/masbay/p/14158224.html