leetcode做题笔记73矩阵置零

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

思路一:记录行列值

cpp 复制代码
void setZeroes(int** matrix, int matrixSize, int* matrixColSize){
    int row[matrixSize],col[*matrixColSize];
    for(int i = 0;i<matrixSize;i++)row[i]=0;
    for(int i = 0;i<*matrixColSize;i++)col[i] = 0;
    for(int i = 0;i<matrixSize;i++)
    {
        for(int j = 0;j<*matrixColSize;j++)
        {
            if(matrix[i][j]==0)
            {
                row[i] = 1;
                col[j] = 1;
            }
            
        }
    }
    for(int i = 0;i<matrixSize;i++)
    {
        if(row[i]==1)
        {
           for(int j = 0;j<*matrixColSize;j++)
            {
                matrix[i][j] = 0;
                
            } 
        }
        
    }
    for(int i = 0;i<*matrixColSize;i++)
    {
        if(col[i]==1)
        {
           for(int j = 0;j<matrixSize;j++)
            {
                matrix[j][i] = 0;
                
            } 
        }
        
    }
    return matrix;


}

分析:

本题可直接将行列值记录下来,再根据行列值内数字是否为1将该行或该列的数字全部变为0

总结:

本题考察矩阵的应用,直接暴力解决即可。

相关推荐
hssfscv18 分钟前
Mysql学习笔记——事务
笔记·学习·mysql
charlie11451419137 分钟前
现代C++工程实践:简单的IniParser3——改进我们的split
开发语言·c++·笔记·学习
自学小白菜2 小时前
每周刷题 - 第三周 - 双指针专题 - 02
python·算法·leetcode
思成不止于此2 小时前
【MySQL 零基础入门】MySQL 函数精讲(二):日期函数与流程控制函数篇
android·数据库·笔记·sql·学习·mysql
中屹指纹浏览器2 小时前
2025技术干货:国内静态 IP 搭配指纹浏览器的加密绑定与跨区域优化方案
经验分享·笔记
不能只会打代码2 小时前
力扣--3433. 统计用户被提及情况
java·算法·leetcode·力扣
Ccjf酷儿3 小时前
操作系统 李治军 4 设备驱动与文件系统
笔记
如竟没有火炬4 小时前
四数相加贰——哈希表
数据结构·python·算法·leetcode·散列表
大白的编程日记.4 小时前
【计算网络学习笔记】Socket编程UDP实现简单聊天室
网络·笔记·学习
中屹指纹浏览器4 小时前
2025技术综述:指纹浏览器与国内IP适配的核心技术优化与实践
经验分享·笔记