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

总结:

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

相关推荐
LYFlied3 分钟前
【每日算法】LeetCode 1143. 最长公共子序列
前端·算法·leetcode·职场和发展·动态规划
长安er1 小时前
LeetCode 20/155/394/739/84/42/单调栈核心原理与经典题型全解析
数据结构·算法·leetcode·动态规划·
利刃大大1 小时前
【2025年度创作总结】从笔记到实践,从思考到生活融合
笔记·生活
航Hang*2 小时前
Photoshop 图形与图像处理技术——第1章:数字图像基本知识
图像处理·笔记·ui·photoshop
yoke菜籽2 小时前
LeetCode——三指针
算法·leetcode·职场和发展
iconball3 小时前
个人用云计算学习笔记 --37 Zabbix
运维·笔记·学习·云计算·zabbix
Yiii_x5 小时前
Object类与包装类
java·经验分享·笔记·课程设计·ai编程
四谎真好看5 小时前
MySQL 学习笔记(运维篇1)
运维·数据库·笔记·学习·mysql·学习笔记
闲看云起5 小时前
LeetCode day3-最长连续序列
算法·leetcode
hssfscv5 小时前
Javaweb学习笔记——Web
笔记·学习·web