大家好,我是IT修真院,一枚正直純潔善良的如剛入門的Java程序員,今天試著給大家分享一下關于Linklist的內容
1;背景介紹...
鏈表的按照存儲的方式分類可以分為兩種,一種是內存連續的順序鏈表,一種是內存不連續的鏈式鏈表,在本文中主要介紹更為靈活的鏈式鏈表,后文中出現的鏈表都默認為鏈式鏈表。
鏈表是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。鏈表由一系列結點(鏈表中每一個元素稱為結點)組成,結點可以在運行時動態生成。每個結點包括兩個部分:一個是存儲數據元素的數據域,另一個是存儲下一個結點地址的指針域。
2;知識剖析
增...刪...查....等
3;常見問題
list與arrylist以及linklist的關系........
1.ArrayList是實現了基于動態數組的數據結構,LinkedList基于鏈表的數據結構。
2.對于隨機訪問get和set,ArrayList優于LinkedList,因為ArrayList可以隨機定位,而LinkedList要移動指針一步一步的移動到節點處。(參考數組與鏈表來思考)
3.對于新增和刪除操作add和remove,LinedList比較占優勢,只需要對指針進行修改即可,而ArrayList要移動數據來填補被刪除的對象的空間。
4;實戰演練
比較查詢速度
5;更多討論
比較插入速度
6;拓展思考
java中的集合框架
7;參考文獻
http://blog.csdn.net/i_lovefish/article/details/8042883
http://blog.csdn.net/ii1245712564/article/details/46381563
http://how2j.cn?p=13495
http://blog.csdn.net/zziamalei/article/details/38797349
http://blog.csdn.net/wuchuanpingstone/article/details/6678653
8;問題討論
1;數組與arrylist的區別是什么?
一個是容器,相當于動態數組,一個是不可擴容的數組
2;linklist的常用情景
插入速度快,適合頻繁插入的業務
3;arrylist...的優點
定位查找快,適用于查找的情景
4;怎么確定一個數組時不是空的?
直接調用size方法,查看數量,如果集合時hashmap類型的,需要注意,它可以存放null值
5;隊列的形式?
常見的是FIFO和FILO兩種吧,還有什么優先隊列的...
歡迎指正!!!