数据结构|顺序表和链表的优缺点比较

顺序表和链表的优缺点比较 顺序表(静态分配) 【数据结构|顺序表和链表的优缺点比较】优点:
(1).结构简单,易于理解;
(2).存储空间连续,方便随机访问表中的每个元素,时间复杂度为O(1);
(3).不需要再为表示节点间的逻辑关系而增加额外的存储空间;
(4).尾插,尾删效率高,时间复杂度为O(1);
(5).CPU缓存利用率高;
缺点:
(1)插入和删除比较慢,时间复杂度为O(N);
(2)长度固定,必须在分配内存之前确定数组长度;
(3)易造成存储空间的利用率低(分配的数组长度过大,就会造成多余的空间得不到利用);
链表(动态分配) 优点:
(1)物理存储单元上非连续,而且采用动态内存分配,能够有效的分配和利用资源;
(2)节点的插入和删除操作简单,不需要内存空间的重组;
缺点:
(1)不能随机访问,只能从头节点开始顺序查找;
(2)数据结构较为复杂,需要大量指针操作,容易出错;
总结:顺序表和链表各有各的优缺点,要视具体情况来确定使用,如需进行频繁插入和删除操作,且很少进行查找可以用链表存储。如需要频繁查找操作,很少插入和删除操作,可以用顺序存储。

    推荐阅读