LeetCode-73. 矩阵置零-C++

给定一个 m x n 的矩阵,如果一个元素为 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。

示例 1:

LeetCode-73. 矩阵置零-C++_第1张图片

输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]

示例 2:

LeetCode-73. 矩阵置零-C++_第2张图片

输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]
输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]

代码实现,带详细注释:

class Solution
{
public:
    void setZeroes(vector>& matrix) 
    {
        int flag_col0=0;//用于标记第一列是否有0
        int row=matrix.size();//求行数
        int col=matrix[0].size();//求列数
        //遍历一遍矩阵,用第一行和第一列标记矩阵中0的坐标,并且判断第一列本身是否存在0
        for(int i=0;i=0;--i)
        {
            for(int j=1;j

你可能感兴趣的:(LeetCode每日一题,leetcode,矩阵,c++)