任何人都可以提出一个算法来生成行排序列排序二维矩阵给出一个整数列表? 我的意思是所有的行和所有列应该排序,最好以整个矩阵的asc/desc顺序排序。行排序列排序矩阵
我想到的是,首先对元素列表进行排序,从0,0开始,然后将下一个元素放置在0,1然后1,0然后是0,2和2,0等等。当行/列有极限违规时,选择下一行/列并继续。
我的算法示例 - 元素是从零开始的自然数。
3 x 5矩阵 -
0 1 3 5 7
2 6 9 11 13
4 8 10 12 14
5×7点阵 -
0 1 3 5 7 9 11
2 10 13 15 17 19 21
4 12 18 23 24 26 28
6 14 20 25 29 30 32
8 16 22 27 31 33 34
这是正确的? 你能否提出一个替代算法和任何代码(Python/C)? 在此先感谢。
编辑 - 最好不要在Python中使用任何其他库例如numpy等有没有办法用简单的普通旧python代码来实现这一点?
:DI明白,但我正在寻找一些更复杂的东西,这样我就不必在开始时对列表进行排序。任何算法呢? :) –