Tôi có một hàm băm mà tôi đang cố gắng sắp xếp theo số lượng. Vấn đề tôi gặp phải là hàm Hash.sort mặc định sắp xếp các số như chuỗi thay vì theo kích thước số.
tức là đã cho Hash:
metrics = {"sitea.com" => 745, "siteb.com" => 9, "sitec.com" => 10 }
Chạy mã này:
metrics.sort {|a1,a2| a2[1]<=>a1[1]}
sẽ trả về một mảng đã sắp xếp:
[ 'siteb.com', 9, 'sitea.com', 745, 'sitec.com', 10]
Mặc dù 745 là một số lớn hơn 9, 9 sẽ xuất hiện đầu tiên trong danh sách. Khi cố gắng thể hiện ai có số lượng cao nhất, điều này đang khiến cuộc sống của tôi trở nên khó khăn. :)
Bất kỳ ý tưởng về cách sắp xếp một hàm băm (hoặc một mảng chẵn) theo kích thước giá trị số?
Tôi đánh giá cao bất kỳ sự giúp đỡ.