【发布时间】:2014-02-26 09:07:13
【问题描述】:
假设我有一个2D array,我想将它的第 i 列传递给一个sort function,它接受一个1D array 并对其进行排序。
是否可以在不将列复制到 C/C++ 语言中的另一个 array 的情况下完成。我担心减少使用的time and space。 (当然复杂性保持不变)
【问题讨论】:
-
我想你应该可以。只需将二维数组传递给函数。但您可能需要编写自己的排序函数,而不是使用通用的
sort或qsort。 -
@rcs 实际的问题很容易解决。就我而言,我只是想发现它是否可以在我给定的设置中完成,而不仅仅是解决问题。
-
好吧,如果您将第一个索引解释为列索引(a[m][n] - 第 m 行的第 n 列),那么您可以只传递 a[m]。如果谈论 C++,您可以使用向量的向量,而不必担心必须传递列的长度。
标签: c++ c multidimensional-array