假设我有一个 2D 数组
,我想将它的第 i 列传递给一个 sort 函数
,它接收一个 1D array
并对其进行排序。
如果不将列复制到另一个 C/C++
语言的 array
是否可以完成。我担心减少使用的时间和空间
。 (当然,复杂性保持不变)
最佳答案
我想您所说的 sort
是指来自 STL 的 std::sort
,它采用随机访问迭代器。因此,您需要做的就是提供列迭代器。
您可以自己实现一个 (example),使用一些迭代器库(即 Boost.Iterator)或使用一些提供行/列迭代器的矩阵实现。
关于c++ - 传递一列二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22036496/