2011-05-29 38 views
4

我的元组下面的列表:为了通过列表中的'一元组的snd`列表:

[("a",6),("b",1),("c",2),("d",4),("e",1),("f",1),("g",5),("h",3),("i",1),("j",2)] 

,但想通过数组的snd元素order在列表中的元组。这样一来,我得到类似的答案:

[("b",1),("e",1),("f",1),("i",1),("c",2),("j",2),("h",3),("d",4),("g",5),("a",6)] 

(即列表是按每个元组的第二个(snd)下令

+1

家庭作业?标记它! – augustss 2011-05-29 22:57:44

回答

10
sortBy (comparing snd) 

其中sortByListcomparingData.Ord

5

作为替代jleedev的回答是:

sortBy (compare `on` snd) 

其中sortByData.ListonData.Function

IMO此配方略好,因为compare只是Ord的标准分类方法,而oncomparing的更普遍有用的功能。但其中没有太多内容。