给定一个m×n矩阵,如果一个元素为0,则将其整行和列的值设置为0.

本题源自LeetCode

--------------------------------------------------

思路1  遍历整个数组,遇到0  就把整行和整列不为0 的值置为* ,然后再次遍历数组把* 换为0

 void setZeroes(vector > &matrix) {
        int rows=matrix.size();
        int cols=0;
        if(rows!=0){
            cols=matrix[0].size();
        }
        if(rows==0||cols==0)
            return;
        for(int i=0;i

思路2 :

用第一行和第一列存储数组中0的行和列

    void setZeroes(vector > &matrix) {
        int rows=matrix.size();
        int cols=0;
        if(rows!=0){
            cols=matrix[0].size();
        }
        if(rows==0||cols==0)
            return;
        int rowFlag=false;
        int colFlag=false; 
        //判断第一行和第一列是否有 0 
        for(int i=0;i


你可能感兴趣的:(C++,leetcode,算法)