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;
            }
        }
    }
};
相关推荐
啦啦啦啦啦zzzz38 分钟前
设计模式:建造者模式
c++·设计模式·建造者模式
wuminyu1 小时前
JUC组件逐层剥离与深度剖析
java·linux·c语言·jvm·c++·算法
圣保罗的大教堂1 小时前
leetcode 3016. 输入单词需要的最少按键次数 II 中等
leetcode
独隅2 小时前
CLion 接入 Codex 的完整配置使用全面指南
c++·ide·ai·c++23
老洋葱Mr_Onion2 小时前
【C++】高精度模板
开发语言·c++·算法
我不是懒洋洋3 小时前
从零实现一个分布式计算:MapReduce的核心设计
c++
白白白小纯13 小时前
算法篇—反转链表
c语言·数据结构·算法·leetcode
小王C语言13 小时前
【7. 实现登录注册模块】:实现会话管理、注册/登录/退出 API
网络·c++
圣保罗的大教堂15 小时前
leetcode 3517. 最小回文排列 I 中等
leetcode
峥无16 小时前
C++11 深度详解:现代 C++ 基石全梳理
开发语言·c++·笔记