LeetCode 73 矩陣置零

2021-10-21 20:36:25 字數 903 閱讀 7127

難度:中等。

標籤:陣列。

這個題要求使用常數空間進行解決,那就只能使用陣列中的某行某列儲存標記。

找到第乙個值為0的元素,將其行索引row

rowro

w和列索引col

colco

l儲存下來,然後使用元素所在的行和列儲存標記。

接下來繼續遍歷陣列,若得到另乙個為0的元素mat

rix[

i][j

]matrix[i][j]

matrix

[i][

j],將其mat

rix[

row]

[j

]matrix[row][j]

matrix

[row

][j]

和m at

rix[

i][c

ol

]matrix[i][col]

matrix

[i][

col]

置為0。

再次遍歷row行的元素和col列的元素,若為0,改變其他同行或同列的元素。

正確解法:

class

solution

else

if(matrix[i]

[j]==0)

}}if(row ==-1

)return

;for

(int i =

0; i < n1; i++)}

}for

(int j =

0; j < n2; j++)}

for(

int i =

0; i < n2; i++

)matrix[row]

[i]=0;

}};

leetcode 73 矩陣置零

給定乙個 m x n 的矩陣,如果乙個元素為 0,則將其所在行和列的所有元素都設為 0。請使用原地演算法。示例 1 輸入 1,1,1 1,0,1 1,1,1 輸出 1,0,1 0,0,0 1,0,1 示例 2 輸入 0,1,2,0 3,4,5,2 1,3,1,5 輸出 0,0,0,0 0,4,5,0...

leetcode73 矩陣置零

給定乙個 m x n 的矩陣,如果乙個元素為 0,則將其所在行和列的所有元素都設為 0。請使用原地演算法。示例 1 輸入 1,1,1 1,0,1 1,1,1 輸出 1,0,1 0,0,0 1,0,1 空間複雜度為o mn 的解法自不用多說,直接新建乙個和matrix等大小的矩陣,然後一行一行的掃,只...

leetcode 73 矩陣置零

給定乙個 m x n 的矩陣,如果乙個元素為 0,則將其所在行和列的所有元素都設為 0。請使用原地演算法。示例 1 輸入 1,1,1 1,0,1 1,1,1 輸出 1,0,1 0,0,0 1,0,1 示例 2 輸入 0,1,2,0 3,4,5,2 1,3,1,5 輸出 0,0,0,0 0,4,5,0...