Julia集合和dict的顺序是否保证在会话、平台和版本之间保持稳定?
我尝试在MacOSX和Linux上跨多个Julia REPL会话运行以下代码,结果总是完全相同(顺序相同): 问题:这种行为是否由语言保证,跨会话、跨平台、跨版本,以及所有基于哈希的集合? 注:Julia集合和dict的顺序是否保证在会话、平台和版本之间保持稳定?,julia,Julia,我尝试在MacOSX和Linux上跨多个Julia REPL会话运行以下代码,结果总是完全相同(顺序相同): 问题:这种行为是否由语言保证,跨会话、跨平台、跨版本,以及所有基于哈希的集合? 注: 我知道输出顺序可能会因插入顺序的不同而有所不同,特别是在存在哈希冲突的情况下。我的问题假设插入顺序是恒定的 这个问题与我关于hash()函数本身稳定性的问题有关(它密切相关,但不同) 不,这是内部实现的一部分,与内部事物一样,开发人员不保证订单行为在不同平台和版本中是相同的 同时,如果您想使设置或Di
- 我知道输出顺序可能会因插入顺序的不同而有所不同,特别是在存在哈希冲突的情况下。我的问题假设插入顺序是恒定的
- 这个问题与我关于
函数本身稳定性的问题有关(它密切相关,但不同)hash()
设置
或Dict
结构具有保证顺序,则可以使用或来保持顺序。关于字典,你也可以阅读和主题,因为它们除了保持顺序之外还有其他的优点
julia> (Set([1, 2, 3, 4]), Dict(1=>2, 3=>4, 5=>6))
(Set([4, 2, 3, 1]), Dict(3 => 4,5 => 6,1 => 2))