我如何找到二维数组的中间?

时间:2018-07-04 20:52:29

标签: c#

假设我有一个二维数组。

int[,] rooms = new int[3,5];

我如何找到最中间的位置?

4 个答案:

答案 0 :(得分:1)

使用rooms.GetLength(0) / 2rooms.GetLength(1) / 2获取中间位置的第一个索引和第二个索引。

对此问题的回答是here

答案 1 :(得分:1)

var middle = rooms[rooms.GetLength(0) / 2, rooms.GetLength(1) / 2]

但是这只会在奇怪的地方起作用。定义所需的其他行为...

答案 2 :(得分:1)

在示例中,这将返回1:

int[,] rooms = new int[3,5] { { 0, 0, 0, 0, 0 }, { 0, 0, 1, 0, 0 }, { 0, 0, 0, 0, 0 } };
int len0 = rooms.GetLength(0);
int len1 = rooms.GetLength(1);
return rooms[len0 / 2, len1 / 2];

答案 3 :(得分:1)

查找行长

int rowLength = arr.length;

查找列长

int columnLength = arr[0].length;

找到中间元素

int mid = arr[arr.length/2][arr[0].length/2];