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;
            }
        }
    }
};
相关推荐
xiaoye-duck1 分钟前
《算法题讲解指南:动态规划算法--路径问题》--7.礼物的最大价值,8.下降路径最小和
c++·算法·动态规划
Queenie_Charlie8 分钟前
二分匹配
c++·算法·二分匹配
美式请加冰13 分钟前
栈的介绍和使用(算法)
数据结构·算法·leetcode
不染尘.14 分钟前
排序算法详解2
数据结构·c++·算法·排序算法
cm65432015 分钟前
C++代码切片分析
开发语言·c++·算法
Lhan.zzZ20 分钟前
深入浅出 Qt 信号槽连接方式:从 AutoConnection 到 BlockingQueuedConnectionQt
开发语言·c++·qt
重生之我是Java开发战士23 分钟前
【递归、搜索与回溯】FloodFill算法:图像渲染,岛屿数量,岛屿的最大面积,被围绕的区域,太平洋大西洋水流问题,扫雷游戏,衣橱整理
算法·leetcode·深度优先
草莓熊Lotso25 分钟前
MySQL 内置函数指南:日期、字符串、数学函数实战
android·java·linux·运维·数据库·c++·mysql
ab15151726 分钟前
3.21二刷基础125、122、130,完成进阶65
开发语言·c++·算法
j_xxx404_30 分钟前
力扣--分治(快速排序)算法题I:颜色分类,排序数组
数据结构·c++·算法·leetcode·排序算法