在Haskell中,我们如何按第一个元素排序,然后按第二个元素排序?
我知道我们可以使用类似sortBy (compare on snd) lst
的东西,但这只适用于第二个/第一个值。我们如何通过第一个元素进行比较,然后通过第二个元素进行对比?
这是元组的内置Ord实例,因此您只需使用sort
:
Data.List.sort :: (Ord a, Ord b) => [(a, b)] -> [(a, b)]