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

总结:

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

相关推荐
芒克芒克13 分钟前
LeetCode 134. 加油站(O(n)时间+O(1)空间最优解)
java·算法·leetcode·职场和发展
凉、介15 分钟前
ARM 架构中的内存屏障
arm开发·笔记·学习·架构·操作系统·嵌入式
TracyCoder12336 分钟前
LeetCode Hot100(4/100)——283. 移动零
算法·leetcode
TracyCoder1231 小时前
LeetCode Hot100(2/100)——49. 字母异位词分组 (Group Anagrams)。
算法·leetcode
TracyCoder1231 小时前
LeetCode Hot100(3/100)——128.最长连续序列
算法·leetcode
Pith_2 小时前
模式识别与机器学习复习笔记(下-深度学习篇)
笔记·深度学习·机器学习
BlackWolfSky2 小时前
鸿蒙中级课程笔记2—状态管理V2—@Local
笔记·华为·harmonyos
zhangrelay2 小时前
linux下如何通过与AI对话设置thinkpad电池充电阈值
linux·运维·笔记·学习
张祥6422889042 小时前
误差理论与测量平差基础笔记八
笔记·算法·机器学习
程序员-King.2 小时前
day168—递归—二叉树的最大路径和(LeetCode-124)
算法·leetcode·深度优先·递归