【发布时间】:2019-05-24 12:03:06
【问题描述】:
如何根据其中一行中的值对二维数组进行排序?
let array = [["X", "Y", 1, 2, 3, 4, 5],
["V", "W", "A","B","C","D","E"]
]
let sorted = [["X", "Y", 5, 4, 3, 2, 1],
["V", "W", "E","D","C","B","A"]
]
Swift Array.sort({e1, e2 in e1 < e2}) 传入行元素,而不是列元素。
更糟糕的是,不能对行中的前两列进行排序。
请记住,第 2 行必须根据第 1 行的顺序重新排列。所以假设我们按第 0 行排序并忽略第 2 列
[["X", "Y", 1, 2, 3, 4, 5],
["V", "W", "E","B","A","D","F"]]
应该变成
[["X", "Y", 5, 4, 3, 2, 1],
["V", "W", "F","D","A","B","E"]]
【问题讨论】:
-
不了解您要用于获取排序数组的逻辑。请解释一下。