Arrays 如何在Lua中对多维表进行排序?

Arrays 如何在Lua中对多维表进行排序?,arrays,sorting,multidimensional-array,lua,lua-table,Arrays,Sorting,Multidimensional Array,Lua,Lua Table,我有一个表,基本上包括以下内容: myTable = {{1, 6.345}, {2, 3.678}, {3, 4.890}} 我想按十进制值对表格进行排序。 因此,我希望输出为: {{2, 3.678}, {3, 4.890}, {1, 6.345}} 如果可能,我想使用table.sort()函数。提前感谢您的帮助:-)鉴于您的表是一个序列,您可以直接使用table.sort。此函数接受比较谓词作为其第二个参数,该参数规定了比较逻辑: require 'table' myTable =

我有一个表,基本上包括以下内容:

myTable = {{1, 6.345}, {2, 3.678}, {3, 4.890}}
我想按十进制值对表格进行排序。 因此,我希望输出为:

{{2, 3.678}, {3, 4.890}, {1, 6.345}}

如果可能,我想使用table.sort()函数。提前感谢您的帮助:-)

鉴于您的表是一个序列,您可以直接使用
table.sort
。此函数接受比较谓词作为其第二个参数,该参数规定了比较逻辑:

require 'table'

myTable = {{1, 6.345}, {2, 3.678}, {3, 4.890}}

table.sort(myTable, function(lhs, rhs) return lhs[2] < rhs[2] end)
这里的关键不是要排序的表的维度,而是它是一个序列,即有序的事实

2       3.678
3       4.89
1       6.345