0
A
回答
1
0
我能想到列表和詞典。由於字典是鍵值對,因此它們更「隨機訪問」友好。
1
最終它取決於你對「數組」的含義。我會告訴你,RAM是一個很大的字節數組(技術上說是一個大字節數組加上一些重載的方法來讀取他們在1,2,(幾乎總是)4和(有時)8個字節塊並不總是工作如果你嘗試從一個字節「unaligned」開始讀取那個數字,那麼就是(或者不能完全停止)。所以一切都建立在一個數組之上。
如果通過「數組」你只是指「我使用的語言的結構調用數組和基於該數組的語言的所有結構」,那麼我可以簡單地(在C代碼中)一塊內存並以類似於數組的方式使用它(並且可能在其上構建一個哈希表)。關鍵詞是「相似」。
給定足夠的虛擬地址空間,您可以使用VirtualAlloc
(在Windows下,在Linux下爲mmap
)使用計算機的MMU模擬哈希表。這將是相當昂貴和無用的:-)我仍然認爲它是一個數組的另一個名稱(一個「稀疏」數組)。
相關問題
- 1. 擅長插入,刪除和隨機訪問的數據結構
- 2. 除了@ 2x之外,UIImage還支持哪些其他標籤?
- 3. 我可以用什麼數據結構隨機訪問它的內容?
- 4. 除了Ajax之外的其他傳輸數據的方式
- 5. 除了結構化XML數據之外,還選擇行數據
- 6. 數據結構,其支持查表
- 7. JTable構造函數可以接受除數組之外的其他數據結構嗎?
- 8. Ruby數組是什麼數據結構?
- 9. 如何獲得除了elasticsearch聚合之外的其他數據?
- 10. 支持通過索引訪問的數據結構以及鍵
- 11. 隨機訪問正確的數據結構並沒有重複
- 12. 具有快速隨機訪問的堆狀數據結構?
- 13. 除了PHP數組之外,處理一組PHP對象的好結構是什麼?
- 14. 快速隨機訪問,搜索,插入和刪除的高效數據結構
- 15. hawq和其他數據庫之間支持的pl語言有什麼不同?
- 16. T9 /拼寫檢查詞典以外的其他Trie數據結構的其他可能用例是什麼?
- 17. Windows Azure支持除.NET之外的其他技術
- 18. 什麼樣的數據結構支持快速插入,刪除和搜索
- 19. 隨機世界的數據結構
- 20. 編譯時數據數組結構以外的數據結構?
- 21. 數組的結構是什麼?
- 22. 相同數據類型的結構和數組之間的區別是什麼?
- 23. 隨機函數,其結果是給定的totalscore從數組值
- 24. 不同的數據結構在java中保存除地圖以外的其他數據結構
- 25. 通過索引和鍵支持隨機訪問的數據結構,在維持順序的對數時間內插入和刪除
- 26. 爲什麼我們需要除HashMap以外的數據結構
- 27. 爲什麼此數組在$ .getJSON之外失去其數據?
- 28. 訪問結構數組
- 29. 訪問typedef結構數組
- 30. 如何比數組中的其他隨機數生成一個隨機數?
這可以包括建立在數組之上的數據結構嗎?大部分將使用數組構建,例如散列表 –
不,您不能構建在陣列之上 - 我已經編輯過;) – root
「支持」意味着隨機訪問的O(1)時間複雜度嗎?我可以做一個二叉樹允許隨機訪問,但它不會是O(1) – Flexo