一个二维矩阵,如果矩阵有元素为0,就把对应的行和列上面的元素都置为0。
class Solution { public: void setZeroes(vector<vector<int> > &matrix) { int m = matrix.size(); int n = matrix[0].size(); vector<bool>rowRecord(m); vector<bool>colRecord(n); for(int i = 0; i<m;i++) { for(int j = 0;j<n;j++) { if(matrix[i][j]==0) { rowRecord[i]= true; colRecord[j] = true; } } } for(int i = 0;i<m;i++) { for(int j =0;j<n;j++) { if(rowRecord[i]==true) matrix[i][j]=0; else if(colRecord[j]==true) matrix[i][j]=0; } } } };
时间: 2024-09-29 12:53:04