Ruby ハッシュのソート
code:ruby
hash = {"A"=>11, "D"=>6, "C"=>2, "G"=>4, "B"=>75}
# ハッシュを単純に sort すると、key の昇順になる
hash.sort
# value でソートするには、sort_by を使う
hash.sort_by { |key, value| value }
# 配列をハッシュに変換
hash.sort_by { |key, value| value }.to_h
#=> {"C"=>2, "G"=>4, "D"=>6, "A"=>11, "B"=>75} # 降順にするには、reverse を使う
hash.sort_by { |key, value| value }.reverse.to_h
#=> {"B"=>75, "A"=>11, "D"=>6, "G"=>4, "C"=>2} sort_byの返り値はArray