0073. 矩阵置零

这篇具有很好参考价值的文章主要介绍了0073. 矩阵置零。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

原题链接:

73. 矩阵置零

https://leetcode.cn/problems/set-matrix-zeroes/

完成情况:

0073. 矩阵置零,# LeetCode题解,java学习,矩阵,线性代数,leetcode

解题思路:

解法一:构造一个同等规模的二维数组,即所谓的m*n

解法二: int row[] = new int[m]; int col[] = new int[n];

所谓m+n,则是你可以构建一个:
int row[] = new int[m];
int col[] = new int[n];
来记录哪几行,哪几列需要被设置成0

解法三:常数量级

即,你在二维数组中找到一个等于0的位置,用两个参数,row/col来记录他的位置,然后就和上面的解法二一样,只不过这次是将所有统计结果都记录到row/col这两个看似的一维数组中。文章来源地址https://www.toymoban.com/news/detail-526564.html

参考代码:

package 中等题;

public class __73矩阵置零__普通版 {
    /**
     *
     * @param matrix
     */
    public void setZeroes(int[][] matrix) {
        int helper[][] = matrix;
        for(int i=0;i< matrix.length;i++){
            for (int j=0;j< matrix[0].length;j++){
                if (matrix[i][j] == 0){
                    //设置的是辅助数组
                    SetZero(helper,i,j);
                    break;
                }
            }
        }
        for(int i=0;i< matrix.length;i++) {
            for (int j = 0; j < matrix[0].length; j++) {
                matrix[i][j] = helper[i][j];
            }
        }
    }

    /**
     *
     * @param helper
     * @param m
     * @param n
     */
    private void SetZero(int helper[][], int m, int n) {
        for (int i=0;i< helper.length;i++){
            helper[i][n] = 0;
        }
        for (int i=0;i< helper.length;i++){
            helper[m][i]=  0;
        }
    }


}

到了这里,关于0073. 矩阵置零的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【LeetCode-中等题】73. 矩阵置零

    【LeetCode-中等题】73. 矩阵置零

    参考链接:614,矩阵置零 先设置两个boolean 变量来判断第一行第一列临时数组是否存在0,存在0,说明第一列或第一行要全体置0 先遍历矩阵,将出现0的位置的第一行第一列置为0,后续可以根据第一行或列是否为0,来将对应的行或列全体置为0 根据第一行第一列的置0行列,来

    2024年02月09日
    浏览(8)
  • leetcode做题笔记73矩阵置零

    给定一个  m x n  的矩阵,如果一个元素为  0  ,则将其所在行和列的所有元素都设为  0  。请使用  原地  算法 。 本题可直接将行列值记录下来,再根据行列值内数字是否为1将该行或该列的数字全部变为0 本题考察矩阵的应用,直接暴力解决即可。

    2024年02月13日
    浏览(10)
  • 算法leetcode|73. 矩阵置零(rust重拳出击)

    算法leetcode|73. 矩阵置零(rust重拳出击)

    给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 m == matrix.length n == matrix[0].length 1 = m, n = 200 -2 31 = matrix[i][j] = 2 31 - 1 一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。 一个简单的改进方案是使

    2024年02月11日
    浏览(8)
  • 73. 矩阵置零 --力扣 --JAVA

    给定一个  m x n  的矩阵,如果一个元素为  0  ,则将其所在行和列的所有元素都设为  0  。请使用  原地  算法 。 通过二层循环找出元素为0所在的行和列; 设置标志位记录当前行是否存在元素为0的,设置列表存储列为0的列; 在内循环结束后对存在元素为0的行,填充为

    2024年02月06日
    浏览(11)
  • 矩阵置零(力扣)思维 JAVA

    矩阵置零(力扣)思维 JAVA

    给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 输入:matrix = [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]] 输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]] 输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]] 提示: m == matrix.length n == matrix[0].length

    2024年02月15日
    浏览(8)
  • Java每日一练(20230515) 阶乘后的零、矩阵置零、两数相除

    Java每日一练(20230515) 阶乘后的零、矩阵置零、两数相除

    目录 1. 阶乘后的零  🌟 2. 矩阵置零  🌟🌟 3. 两数相除  🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C++每日一练 专栏 Java每日一练 专栏 给定一个整数  n  ,返回  n!  结果中尾随零的数量。 提示  n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1 示例

    2024年02月05日
    浏览(16)
  • 【学习笔记】(数学)线性代数-矩阵的概念和特殊矩阵

    【学习笔记】(数学)线性代数-矩阵的概念和特殊矩阵

    由 m × n mtimes n m × n 个数按一定的次序排成的 m m m 行 n n n 列的矩形数表成为 m × n mtimes n m × n 的矩阵,简称 矩阵 (matrix)。 横的各排称为矩阵的 行 ,竖的各列称为矩阵的 列 。 元素为实数的称为 实矩阵 ,一般情况下我们所讨论的矩阵均为实矩阵。 1 行 n n n 列的矩阵称为

    2024年02月09日
    浏览(16)
  • 线性代数:增广矩阵学习笔记

    定义 对于一个 n × m ntimes m n × m 的矩阵 A = [ a i j ] A=[a_{ij}] A = [ a ij ​ ] ,我们可以在它的右边加上一个 n × 1 ntimes1 n × 1 的列向量 b b b ,得到一个 n × ( m + 1 ) ntimes(m+1) n × ( m + 1 ) 的矩阵 [ A ∣ b ] begin{bmatrix} A bigl| bend{bmatrix} [ A ​ ​ ​ b ​ ] ,这个矩阵被称为 A A A 的

    2024年02月05日
    浏览(13)
  • 机器学习-线性代数-矩阵与空间映射

    机器学习-线性代数-矩阵与空间映射

    一个 m × n m times n m × n 的大小矩阵,直观上看是 m × n m times n m × n 的数字按矩阵排列。 从向量的角度看,看做是 n n n 个 m m m 维列向量从左到右的排列,也可以看做 m m m 个 n n n 维行向量从上到下的叠放。 方阵:行数等于列数 对称矩阵:原矩阵与其转置矩阵相等: A = A

    2024年02月07日
    浏览(16)
  • 线性代数的学习和整理20,关于向量/矩阵和正交相关,相似矩阵等

    线性代数的学习和整理20,关于向量/矩阵和正交相关,相似矩阵等

    目录 1 什么是正交 1.1 正交相关名词 1.2 正交的定义 1.3 正交向量 1.4 正交基 1.5 正交矩阵的特点 1.6 正交矩阵的用处 orthogonal set 正交向量组 正交变换 orthogonal matrix 正交矩阵 orthogonal basis 正交基 orthogonal decomposition 正交分解 正交的定义:内积为0 正交一定线性无关 其实不共线也

    2024年02月09日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包