数组与链表的区别

数组与链表都是数据结构,并且都是存储特定数据类型。

数组存储的特点:存储的内存地址是连续的。
优点:数据是存放在一个连续的内存地址的上,通过索引进行查询数据时效率比较高。
缺点:而对于数组插入和删除操作,则效率会比较低,在第一个位置进行插入数据,其余数据就需要依次向后移动,而第一个数据进行删除,则需要所有数据全部向前移,这样的话,就会推出第二种结构,链表结构。
 
简单的链表:为了保证数据插入和删除,不会影响其他数据的移动,保证线性开销,所以就引出了链接。每个表都不会连续进行存储。

链式结构的存储特点:[链表]数据在内存中可以在任意位置,通过引用来关联数据。
优点:链表是将每个对象存放在独立的结点中(每个结点还存放着下一个结点的引用),插入或者删除的时候,需要该表链表next链的指向地址即可,每个节点不需要内存进行连续存储,这样会减小删除和插入的线性开销。
缺点:查找元素以及收索元素的效率较低。

     链表是由一系列节点组成的,每个节点都会有一个链点,这就是next链,而next链则会执行下一个node的引用。链表结构主要分为两种链表,单向链表和双向链表 ,即单向链表只有一个next链,而双向链表会有next链和pre链。


数据结构一般都要实现存放、取出、删除、修改、数量这几个操作,所以下面就用实例来真正的了解一下数组链表的区别 见附件

猜你喜欢

转载自1144717718.iteye.com/blog/2344389