[問題] Array v.s List

看板java作者 (~"~)時間13年前 (2012/03/31 11:20), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串1/1
請問Java 是否沒有像C++ vector可以random access 的陣列class呢? 看了一下Java Vector 發現它是implements List 這個interface 是否代表著Vector 無法在常數時間random access? 因為我直覺List 就是不連續的感覺 有點搞不懂Java 裡面array 跟List 到底是什麼關係 另外一點很好奇的是 Collections.sort( List ); 這個sort 接的參數是List object 那傳進去的就不是連續的記憶體 那qsort 能在O(nlogn)做掉嗎@@ 覺得Java API網站上面沒有標每個method 的時間複雜度有點不好.... 謝謝回答! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.114.85.48 ※ 編輯: singlovesong 來自: 58.114.85.48 (03/31 11:20)

03/31 12:48, , 1F
arrayList是用array去實作,get花O(1)時間
03/31 12:48, 1F

03/31 14:11, , 2F
java vector也是array based, 可以random access, 一樣O(1)
03/31 14:11, 2F

03/31 18:01, , 3F
List只是個介面 無關實作 底下有ArrayList/LinkedList可選
03/31 18:01, 3F
文章代碼(AID): #1FTdVou4 (java)