二维阵列缩减

时间:2009-04-28 16:59:38

标签: c# multidimensional-array

我有一个二维数组,我需要将第一个对角线数转换为零。例如,我需要转换以下内容:

[ 1 2 3 ]
[ 5 9 5 ]
[ 3 2 1 ]

对此,意味着对角1 9 1现在是0 0 0

[ 0 2 3 ]
[ 5 0 5 ]
[ 3 2 0 ]

如何在C#中有效地执行此操作?

1 个答案:

答案 0 :(得分:3)

当你和X相等时,你所做的就是将网格中的点设置为零。 (1,1),(2,2)等;

int x = 4, y = 5;
int[,] array = new int[x,y]; // assume we initialize this with some values
for (int i = 0; i < x && i < y; i++ ) {
    array[i,i] = 0;
}