我有這樣一個數組:哈希值的基礎上排序,而不是俯瞰鍵
'cars', 'for', 'racs', 'creams', 'scream'.
現在,我做什麼是我的每個詞/串排序,這個數組,並將該排序字符串作爲哈希值,而原始字符串是鍵。所以現在我有
KEYS - VALUES
cars - acrs
for - for
racs - acrs
creams - acemrs
scream - acemrs
代碼,這是
sorted_words = Hash.new(0)
words.each { |word| sorted_words[word]=word.chars.sort { |a, b| a.casecmp(b) }.join
}
價值的基礎上,這個我有點散後
sorted_words = sorted_words.sort{|a1,a2| a1[1]<=>a2[1]}
和acheive
scream - acemrs
creams - acemrs
racs - acrs
cars - acrs
for - for
相反這個我正在尋找哈希狀排列
cars - acrs
racs - acrs
creams - acemrs
scream - acemrs
for - for
所以,在上面的列表中值的排序位置,在列表中我現在得到,但它也認爲鍵值以便這就是爲什麼第一個是汽車,然後將所有其它鍵,相同價值和奶油,然後爲
'acemrs'是<'acrs',那麼爲什麼這兩個人會在你期望的結果中跟隨前兩個呢? – dbenhur