间章·总结·其一

线性表一般采用两种方式来表示:1.顺序表 2.链表
两者的构成和存储特性各有千秋.
对于使用的考虑来说,主要分为两方面:

1 空间性能

储存密度:在存储结点数据域中占用的存储量,与存储结点所占用的存储量之比
密度越大,空间利用率就越高,由两种存储结构的性质可知,顺序表的存储密度高于链表.为了节约空间的使用,顺序表无疑是最佳的选择.但是,顺序表要求事先估计容量大小,如果空间过大则会浪费,过小则会溢出.链表就不需要.

2 时间性能

顺序表是一种随机存取的结构,对于顺序表中的每一个结点都可以直接快速的进行存取操作,时间复杂度为O(1);链表需从头结点开始,依次遍历,时间复杂度为O(n).所以主要做查找操作的时候,顺序表即为最佳的选择.
对于链表来说,优势在于在任何位置上的插入和删除,只需要修改指针域即可,时间复杂度为O(1);对于顺序表来说,这两种操作相当的不方便,原因是需要移动表中近半的元素(搬城.jpg XD),时间复杂度为O(n).另外,如果对链表的插入主要发生在头和尾的话,采用尾指针表示的单循环链表即最优解.

两者各有利弊,通过实际要求对应两表的优缺点来进行权衡无疑是上上选.

//双向循环链表差的一点会在之后加上-1.7
//今天依旧是外出的一天-1.7
//字数之后可能会增加-1.7

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容