Ruby中的哈希是如何在内部实现的?哈希使用的是什么数据结构/算法?
我知道在Java语言中,Ruby中的哈希是如何在内部实现的?哈希使用的是什么数据结构/算法?,ruby,arrays,data-structures,hashtable,array,hash-table,Ruby,Arrays,Data Structures,Hashtable,Array,Hash Table,我知道在Java语言中,HashMap是实现RubyHash等函数最常用的方法。JavaHashMap正在使用名为“与链表分开链接的数据结构”: 在哪里可以找到Ruby哈希的实现?RubyHash使用的是什么数据结构和算法?这些有帮助吗 arr=[]与arr=Array相同。新的(0,nil)其中0是数组的大小 单击ToggleSource并向下滚动以查看代码 与哈希相同,请查看以下位置的文档: 这些有帮助吗 arr=[]与arr=Array相同。新的(0,nil)其中0是数组的大小 单击T
HashMap
是实现RubyHash
等函数最常用的方法。JavaHashMap
正在使用名为“与链表分开链接的数据结构”:
在哪里可以找到Ruby哈希的实现?RubyHash
使用的是什么数据结构和算法?这些有帮助吗
arr=[]
与arr=Array相同。新的(0,nil)
其中0是数组的大小
单击ToggleSource并向下滚动以查看代码
与哈希相同,请查看以下位置的文档:
这些有帮助吗
arr=[]
与arr=Array相同。新的(0,nil)
其中0是数组的大小
单击ToggleSource并向下滚动以查看代码
与哈希相同,请查看以下位置的文档:
这些有帮助吗
arr=[]
与arr=Array相同。新的(0,nil)
其中0是数组的大小
单击ToggleSource并向下滚动以查看代码
与哈希相同,请查看以下位置的文档:
这些有帮助吗
arr=[]
与arr=Array相同。新的(0,nil)
其中0是数组的大小
单击ToggleSource并向下滚动以查看代码
与哈希相同,请查看以下位置的文档:
请在中查看,只需选择方法,然后单击链接:单击以切换源代码,它将显示源代码
单件法:
实例方法
(Hash
class)的单例方法
(Hash
class)的实例方法
代码意味着零尺寸将分配给arr
变量:
arr = []
arr
# => []
和(Hash
class)的默认大小为0
:
# Array
[].size
# => 0
Array.new.size
# => 0
# Hash
{}.size
# => 0
Hash.new.size
# => 0
请在中查看,只需选择方法,然后单击链接:单击以切换源代码,它将显示源代码
单件法:
实例方法
(Hash
class)的单例方法
(Hash
class)的实例方法
代码意味着零尺寸将分配给arr
变量:
arr = []
arr
# => []
和(Hash
class)的默认大小为0
:
# Array
[].size
# => 0
Array.new.size
# => 0
# Hash
{}.size
# => 0
Hash.new.size
# => 0
请在中查看,只需选择方法,然后单击链接:单击以切换源代码,它将显示源代码
单件法:
实例方法
(Hash
class)的单例方法
(Hash
class)的实例方法
代码意味着零尺寸将分配给arr
变量:
arr = []
arr
# => []
和(Hash
class)的默认大小为0
:
# Array
[].size
# => 0
Array.new.size
# => 0
# Hash
{}.size
# => 0
Hash.new.size
# => 0
请在中查看,只需选择方法,然后单击链接:单击以切换源代码,它将显示源代码
单件法:
实例方法
(Hash
class)的单例方法
(Hash
class)的实例方法
代码意味着零尺寸将分配给arr
变量:
arr = []
arr
# => []
和(Hash
class)的默认大小为0
:
# Array
[].size
# => 0
Array.new.size
# => 0
# Hash
{}.size
# => 0
Hash.new.size
# => 0
我想3将是散列:[]
@ArupRakshit thanx,那是copypata=)呵呵:)我知道..=)谢谢,如果我们知道数组的大小以避免重新调整大小的操作,那么使用类似于arr=Array.new(10000)
的东西,但是Ruby Hash不提供任何方法来根据@coderz初始化哈希表大小,不完全是,使用Array.new(10000)
您只需使用默认值初始化Array
。通常nil
。但您仍然可以访问或设置为arr[10002]
我想3将是Hash:[]
@ArupRakshit-thanx,那是copypata=)呵呵:)我知道..)谢谢,如果我们知道数组的大小以避免重新调整大小的操作,那么使用类似于arr=Array.new(10000)
的东西,但是Ruby Hash不提供任何方法来根据@coderz初始化哈希表大小,不完全是,使用Array.new(10000)
您只需使用默认值初始化Array
。通常nil
。但您仍然可以访问或设置为arr[10002]
我想3将是Hash:[]
@ArupRakshit-thanx,那是copypata=)呵呵:)我知道..)谢谢,如果我们知道数组的大小以避免重新调整大小的操作,那么使用类似于arr=Array.new(10000)
的东西,但是Ruby Hash不提供任何方法来根据@coderz初始化哈希表大小,不完全是,使用Array.new(10000)
您只需使用默认值初始化Array
。通常nil
。但您仍然可以访问或设置为arr[10002]
我想3将是Hash:[]
@ArupRakshit-thanx,那是copypata=)呵呵:)我知道..)谢谢,如果我们知道数组的大小以避免重新调整大小的操作,那么使用类似于arr=Array.new(10000)
的东西,但是Ruby Hash不提供任何方法来根据@coderz初始化哈希表大小,不完全是,使用Array.new(10000)
您只需使用默认值初始化Array
。通常nil
。但您仍然可以访问或设置为arr[10002]
这是一个“教我Ruby”问题,它在StackOverflow上是离题的,因为它太宽了。我建议大家学习Ruby教程。@MarkThomas我已经编辑了我的问题,它不是关于“教我Ruby,如何使用哈希”的问题,我的目的是想知道RubyHash
使用的是什么数据结构和算法。库尔