1 链表与顺序表的比较:
优点:
a:上溢
链表主要的优点在于动态存储的灵活性,除非计算机的内存耗尽,否则不会出现上溢的情况。
b:修改
链表的修改会比顺序表快。因为修改指针的速度比将顺序表中元素的值复制给其他的节点更快,主要体现在删除和插入两个方面。
缺点:
a:空间利用
链表的指针本身要占用内存,一个指针和一个整数的内存一样,都是4个字节,导致这些空间不能另作他用。但是在实际应用中节点会很大,经常会是几百个字节,所以指针占的内存相对来讲就少了。假设节点的数据有100个字节,而顺序表则将数组超过99%填满,才能使节约的内存和链表相当。所以,指针占用的内存可以忽略不计(当节点比较打的时候)。
b:随机访问
顺序表可以很快的访问到数组中的任何位置,而链表则要遍历到访问的位置,得到该节点的指针,然后再访问数据。
因此,总结如下
顺序表的情况:
1 当元素非常小的时候
2 在编写程序就已知表的长度的时候
3 除了在表尾外有很少的插入的时候
4 随机访问很重要的时候
链表的情况
1 元素较大的时候
2 编程前不知道表长度的时候
3 当插入、删除、和重排元素比较重要的时候
浙公网安备 33010602011771号