Ruby容器和复杂性

Ruby容器和复杂性,ruby,hash,time-complexity,Ruby,Hash,Time Complexity,访问类似于散列[:value1][:value2]的内容的时间复杂度是多少 如果我有一个方法,它多次出现,将它分配给一个变量会更好吗 谢谢 Ruby语言规范实际上并没有正式保证任何特定的性能特征,但是,所有Ruby实现都使用动态字典的典型性能特征来实现RubyHashes:O(n)最坏情况时间复杂度和O(1)插入、删除和随机访问的摊销最坏情况时间复杂度。即使规范没有保证这些,社区也会期望这些,任何不符合这些要求的实现都可能不会被社区接受 Rubinius有一个基于散列数组映射的Trie的Hash

访问类似于
散列[:value1][:value2]
的内容的时间复杂度是多少

如果我有一个方法,它多次出现,将它分配给一个变量会更好吗


谢谢

Ruby语言规范实际上并没有正式保证任何特定的性能特征,但是,所有Ruby实现都使用动态字典的典型性能特征来实现Ruby
Hash
es:O(n)最坏情况时间复杂度和O(1)插入、删除和随机访问的摊销最坏情况时间复杂度。即使规范没有保证这些,社区也会期望这些,任何不符合这些要求的实现都可能不会被社区接受

Rubinius有一个基于散列数组映射的Trie的
Hash
的替代实现,可以选择使用命令行开关激活该实现,我认为所有这些都可能有O(logn)(但具有较高的分支因子)。(我还没查过。)