[問題] hash的排序?

看板Ruby作者 (yes i do...)時間18年前 (2007/01/27 02:19), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/2 (看更多)
想請教一下hash的排序 可以依值排完然後再排鍵的大小嗎? 試了好幾種方法好像都不行, 反覆用了itertor也試不太出來 所以想請教一下 example: (先以值排) key value 8 4 3 4 1 2 10 2 然後再以鍵去排, 原來排好的順序(8,3,1,10)會變成 (1,3,8,10) 不過這樣先前排的順序就沒效了~ 想請問一下怎麼keep住之前所排的順序(值)然後再重新做排列呢(鍵) key value 3 4 8 4 1 2 10 2 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.229.14.41

01/28 17:13, , 1F
因為 ruby 用 quick sort (unstable sort algorithm)
01/28 17:13, 1F

01/28 18:52, , 2F
不,不是那樣,他要的比較方式跟那無關
01/28 18:52, 2F

01/28 19:31, , 3F
不,如果是 stable sort, 用原po的方式第一次排 value
01/28 19:31, 3F

01/28 19:32, , 4F
第二次排 key 就可以達到本來想要的效果
01/28 19:32, 4F

01/28 19:32, , 5F
呃,寫錯,是第一次排 key 第二次排 value , sorry
01/28 19:32, 5F

01/28 19:37, , 6F
說的也是,沒想清楚 @@ 雖然這樣排兩次
01/28 19:37, 6F
文章代碼(AID): #15kaOnz_ (Ruby)
討論串 (同標題文章)
以下文章回應了本文
完整討論串 (本文為第 1 之 2 篇):
2
6
文章代碼(AID): #15kaOnz_ (Ruby)