C++ | Leetcode C++题解之第73题矩阵置零

题目:

题解:

cpp 复制代码
class Solution {
public:
    void setZeroes(vector<vector<int>>& matrix) {
        int m = matrix.size();
        int n = matrix[0].size();
        int flag_col0 = false;
        for (int i = 0; i < m; i++) {
            if (!matrix[i][0]) {
                flag_col0 = true;
            }
            for (int j = 1; j < n; j++) {
                if (!matrix[i][j]) {
                    matrix[i][0] = matrix[0][j] = 0;
                }
            }
        }
        for (int i = m - 1; i >= 0; i--) {
            for (int j = 1; j < n; j++) {
                if (!matrix[i][0] || !matrix[0][j]) {
                    matrix[i][j] = 0;
                }
            }
            if (flag_col0) {
                matrix[i][0] = 0;
            }
        }
    }
};
相关推荐
Tisfy3 小时前
LeetCode 1288.删除被覆盖区间:排序(非二重循环暴力)
算法·leetcode·题解·排序
汉克老师4 小时前
GESP2026年6月认证C++八级( 第二部分判断题(1-10))精讲
c++·归并排序·dijkstra·二分·互斥·gesp8级·可重复组合
nianniannnn5 小时前
c++复习自存--流、异常处理、多线程与C++工程规范
开发语言·c++
知无不研6 小时前
缺省参数与缺省函数的区别
c++·语法
玛卡巴卡ldf6 小时前
【LeetCode 手撕算法】(细节知识点总结)
java·数据结构·算法·leetcode·力扣
从零开始的代码生活_7 小时前
C++ 类和对象中篇:默认成员函数、拷贝控制与运算符重载
服务器·开发语言·c++
csdndenglu8 小时前
Easy3D:一个轻量级、易用、高效的C++库,用于处理和渲染3D数据,无复杂要求时可替代VTK
开发语言·c++·图形渲染·3d渲染
tkevinjd8 小时前
力扣322-零钱兑换
算法·leetcode·动态规划
^yi9 小时前
【C++】String 类
开发语言·c++
Frostnova丶9 小时前
(13)LeetCode 53. 最大子数组和
算法·leetcode·职场和发展