隨機訪問和快速訪問


我們都知道ArrayList接口實現了一個RandomAccess接口,可以快速隨機訪問,而LinkedList只能順序訪問,那么這是為什么呢?

 

ArrayList底層的數據結構是Object[]存儲,數組在內存分配里,是一段連續的內存空間,譬如分配的內存地址是002,003,004,005四個地址,那么我們如果要隨機訪問角標為3的數據,只需要訪問002+3=005的數據就行了,這就是快速隨機訪問。

而 LinkedList是鏈表結構,在內存里是不連續的,相鄰的數據之間用指針指向即可。如001<->003<->004<->005.那么此時,我們要訪問角標為3的數據,就只能從第一個數據開始依次迭代,找到第4個數據,這就是順序訪問


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM