一、存储分配方式:
1、顺序存储方式:相当于数组,是利用一段连续的存储空间依次来存储线性表的数据元素。
2、单链表:采用链式存储结构,每次的存储是向内存申请空间,用一组任意的存储空间来存储数据。
二、时间性能
1、查找
顺序存储方式(相当于数组):O(1),可直接取用。
单链表:O(n),每次得遍历整个链表。
2、插入删除:
顺序存储:每次得将前或者后面的元素移动一个元素位置,平均时间复杂度为O(n)。
链表:寻找到插入或者删除的位置 O(n),插入与删除只需要更改指针指向,时间复杂度为O (1)。
三、空间性能:
1、顺序存储方式,建立时需要预先分配空间,分配的不准确就会导致空间的浪费,并且为连续的存储空间。
2、单链表,建立时每次插入元素都会先根据需要申请空间,不会造成空间的浪费。
通过对比,我们可以得出:
当线性表需要频繁查找,很少进行插入删除时,适合用顺序存储结构。如果要进行多次的插入删除,那么需要用单链表。
当数据的存储不知道数量时,顺序存储会造成大量的空间浪费,此时适合用单链表实时的存储。
总之,根据实际情况来选择适合的数据结构才是我们的最终目的。