我有一系列要点:
arr = [[2,0], [1,0], [2,1], [1,1]]
我如何按x先降序和升序对元素进行排序,然后按相似x值的y值进行排序?
max = [[2,1], [2,0], [1,1], [1,0]]
min = [[1,0], [1,1], [2,0], [2,1]]
。
答案 0 :(得分:3)
min = arr.sort
# => [[1, 0], [1, 1], [2, 0], [2, 1]]
max = min.reverse
# => [[2, 1], [2, 0], [1, 1], [1, 0]]
如果性能是一个问题而不是简单,那么可以使用以下内容。
min = arr.sort_by(&:itself)