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

总结:

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

相关推荐
YuTaoShao11 分钟前
【LeetCode 每日一题】712. 两个字符串的最小ASCII删除和——(解法一)记忆化搜索
算法·leetcode·职场和发展
数据轨迹00114 分钟前
CVPR Efficient ViM:视觉 Mamba 的轻量化
经验分享·笔记·facebook·oneapi·twitter
wdfk_prog27 分钟前
WIN11如何可以安装ISO
linux·笔记·学习
haokan_Jia35 分钟前
【高项十大知识域-重点笔记】
笔记
圣保罗的大教堂1 小时前
leetcode 1266. 访问所有点的最小时间 简单
leetcode
中屹指纹浏览器2 小时前
中屹指纹浏览器的IP-指纹协同适配技术架构与实现原理
经验分享·笔记
源代码•宸2 小时前
Leetcode—85. 最大矩形【困难】
经验分享·算法·leetcode·职场和发展·golang·单调栈
崎岖Qiu2 小时前
【OS笔记40】:设备管理 - 通道控制方式
笔记·操作系统·dma·os
自不量力的A同学2 小时前
Midjourney 推出面向动漫领域的图像生成模型:Niji V7
笔记
狐572 小时前
2026-01-12-云计算速成课-期末复习
笔记·云计算·期末复习