作者skyboy (yes i do...)
看板Ruby
標題[問題] hash的排序?
時間Sat Jan 27 02:19:24 2007
想請教一下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
1F:推 yjc1:因為 ruby 用 quick sort (unstable sort algorithm) 01/28 17:13
2F:→ godfat:不,不是那樣,他要的比較方式跟那無關 01/28 18:52
3F:推 yjc1:不,如果是 stable sort, 用原po的方式第一次排 value 01/28 19:31
4F:→ yjc1:第二次排 key 就可以達到本來想要的效果 01/28 19:32
5F:→ yjc1:呃,寫錯,是第一次排 key 第二次排 value , sorry 01/28 19:32
6F:→ godfat:說的也是,沒想清楚 @@ 雖然這樣排兩次 01/28 19:37