[英]Which is more efficient in Ruby, Hash vs Array
我正在通過規范的鎬書學習Ruby。 在那本書的第2.3節中,我發現了一句話,
訪問數組元素效率更高,但哈希提供了更大的靈活性
據我所知,訪問數組元素並按鍵查找哈希值都需要O(1)時間。
當作者說數組訪問更有效時,作者的意思是什么? 它只是意味着數組更有效,因為數組的內部表示比哈希更簡單嗎?
它只是意味着數組更有效,因為數組的內部表示比哈希更簡單嗎?
是。 算法復雜度可能相同,但一般來說數組會更快,因為查找過程要簡單得多。 另一方面,當使用數組時,“keys”(索引)只能是整數,而數組不是稀疏的 - 如果存儲到a[100]
,之后數組中將至少有101個元素。
(對於非常稀疏的數組,哈希映射應該實際上表現更好)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.