Lua中的数组排序

嗨,我是Lua的新手,我需要在Lua中对数组进行排序。

所以我有以下的代码

local distances = {2,3,1}
table.sort(distances)

现在我得到的是

  • distances[1] -> 1
  • distances[2] -> 2
  • distances[3] -> 3

现在我还需要保存一些与我的"distances"相关的信息 像下面这样

local distances = {{C1,2},{C2,3},{C3,1}}

现在无法调用排序函数,但我需要它们被排序。 有可能做到这点吗?

  • distances[1] -> {C3,1}
  • distances[2] -> {C2,2}
  • distances[3] -> {C1,3}

谢谢大家 :)

点赞
用户2505965
用户2505965

table.sort 函数的第二个参数是比较函数。

table.sort(distances, function (left, right)
    return left[2] < right[2]
end)
2016-11-29 13:02:02