【发布时间】:2016-11-15 08:15:40
【问题描述】:
我想将所有数据从二维数组的第 0 列移动到单独的一维数组。到目前为止我有这个:
for (int x = 0; x < 100; x++) { //100 is the amount of rows in the 2D array
array1D[x] = array2D[x, 0]; //0 is the column I want to take from
}
是否有更好/更有效的方法来实现相同的结果?
【问题讨论】:
-
必须使用不安全的代码——如果数组是锯齿状的,你可以切掉一列,但是对于矩形数组没有这样的选项。除非这是一个重大性能问题,否则不值得麻烦恕我直言。
-
如果是性能问题,重组数据结构可能比尝试优化该特定操作带来更多好处(这可能已经足够接近最佳值 - 当代码运行时使用发布版本优化时检查生成的程序集)。无论如何 - 在改变之前测量......
-
附注请更新您的问题,说明您正在寻找哪种类型的改进:Code Review 上可能会更好地询问代码样式,性能问题需要目标 + 当前数字,...
标签: c# arrays multidimensional-array