给定一个有m行n列的矩阵,其中每个行和列都是已排序的。如何高效地对整个矩阵进行排序?
我知道一个运行时间为O(m n log(min(m,n))的解决方案。我正在寻找更好的解决方案。
我所知道的方法基本上是每次取2行/列并应用合并操作。
以下是一个例子:
[[1,4,7,10],
[2,5,8,11],
[3,6,9,12]]
输入矩阵的每一行和每一列都是已排序的。
期望的输出结果是:
[1,2,3,4,5,6,7,8,9,10,11,12]
另一个例子:
[[1, 2, 3, 3, 4, 5, 6, 6, 7, 7],
[1, 2, 4, 6, 7, 7, 8, 8, 9,10],
[3, 3, 4, 8, 8, 9,10,11,11,12],
[3, 3, 5, 8, 8, 9,12,12,13,14]]
[(1, 4, 8), (2, 9, 11), (3, 12, 14)]
- khachik