我有這樣的2d數組。從二維數組中刪除重複值
int[,] arr = new int[3,5]{
{1,2,3,4,5},
{10,22,53,4,35},
{1,12,13,45,51}};
現在我想
預期輸出是(刪除其它元素的值索引不應改變之後即),以除去所有保持順序不變的重複值:
1 2 3 4 5
10 22 53 0 0
0 12 13 45 51
注:重複值可以用0代替。
這是我的嘗試。任何人都可以告訴我我做錯了什麼。
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 5; j++)
{
int a = matrix[i, j];
int flag = 1;
for (int k = 0; k < 3; k++)
{
for (int l = 0; l < 5; l++)
{
if (a == matrix[k, l] && flag == 0)
{
matrix[k, l] = 0;
}
else if (a == matrix[k, l] && flag != 0)
{
flag--;
}
}
}
}
}
P.S.有沒有其他的方式來做到這一點,而不是迭代4循環?
你得到了什麼輸出? –
某些值不會被刪除 –
@Mr。Bhanushali你有矩陣3x5,但初始化它與5x5正確的排隊請 –