ArrayList和LinkedList的區別
rrayList和LinkedList是常用的兩種儲存結構,那麼它們有哪些區別呢?這裡簡單給出一部分。
1、ArrayList和LinkedList可想從名字分析,它們一個是Array(動態陣列)的資料結構,一個是Link(連結串列)的資料結構,此外,它們兩個都是對List介面的實現。
前者是陣列佇列,相當於動態陣列;後者為雙向連結串列結構,也可當作堆疊、佇列、雙端佇列
2、當隨機訪問List時(get和set操作),ArrayList比LinkedList的效率更高,因為LinkedList是線性的資料儲存方式,所以需要移動指標從前往後依次查詢。
3、當對資料進行增加和刪除的操作時(add和remove操作),LinkedList比ArrayList的效率更高,因為ArrayList是陣列,所以在其中進行增刪操作時,會對操作點之後所有資料的下標索引造成影響,需要進行資料的移動。
4、從利用效率來看,ArrayList自由性較低,因為它需要手動的設定固定大小的容量,但是它的使用比較方便,只需要建立,然後新增資料,透過呼叫下標進行使用;而LinkedList自由性較高,能夠動態的隨資料量的變化而變化,但是它不便於使用。
5、ArrayList主要控制元件開銷在於需要在lList列表預留一定空間;而LinkList主要控制元件開銷在於需要儲存結點資訊以及結點指標資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31543790/viewspace-2564119/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- ArrayList和LinkedList的區別?
- ArrayList和LinkedList的區別是什麼
- java複習之 Vector、ArrayList和LinkedList 的區別Java
- ArrayList和LinkedList底層原理的區別和使用場景
- ArrayList和LinkedList的比較
- 【java】【集合】List的三個子類—ArrayList、Vector、LinkedList的區別和聯絡Java
- ArrayList和LinkedList如何實現的?
- Java集合系列(二):ArrayList、LinkedList、Vector的使用方法及區別Java
- java集合【12】——— ArrayList,LinkedList,Vector的相同點與區別是什麼?Java
- Java中Vector和ArrayList的區別Java
- Java ArrayList 與 LinkedListJava
- 3、List集合——ArrayList、LinkedList
- ArrayList & LinkedList原始碼解析原始碼
- java中的List介面(ArrayList、Vector、LinkedList)Java
- java arrayList vector 區別Java
- ArrayList、LinkedList和Vector的原始碼解析,帶你走近List的世界原始碼
- 老徐和阿珍的故事:ArrayList和LinkedList的效率到底哪個高?
- Java ArrayList 與 LinkedList 的靈活選擇Java
- Java List 常用集合 ArrayList、LinkedList、VectorJava
- ArrayList,HashMap,LinkedList 初始化大小和 擴容機制HashMap
- Java-ArrayList & LinkedList的原始碼對比分析Java原始碼
- [原始碼分析]ArrayList和LinkedList如何實現的?我看你還有機會!原始碼
- List集合(ArrayList-LinkedList);Set集合(HashSet-TreeSet)
- List集合總結,對比分析ArrayList,Vector,LinkedList
- 毫不留情地揭開 ArrayList 和 LinkedList 之間的神祕面紗
- 大白話+畫圖 從原始碼角度一步步搞懂ArrayList和LinkedList的使用原始碼
- ArrayList 其實也有雙胞胎,但區別還是挺大的!
- ../和./和/的區別
- http和https的區別/get和post的區別HTTP
- 資料結構:用例項分析ArrayList與LinkedList的讀寫效能資料結構
- ||和??的區別
- /*和/**的區別
- 探索JAVA系列(二)LinkedList插入資料真的比ArrayList快嗎?Java
- c#中Array,ArrayList 與List<T>的區別、共性與轉換C#
- jquery $(this) 和this的區別jQuery
- JQuery this和$(this)的區別jQuery
- T和?的區別