【HashMap】 73. 矩阵置零

73. 矩阵置零

解题思路

  • 首先遍历矩阵找到所有的0元素 将其的行和列索引记录下俩
  • 遍历矩阵 将所有的需要更新的元素进行更新 也就是查找hashmap中的每一个元素进行更新
  • 查找行或者列是否在hashmap中
java 复制代码
class Solution {
    public void setZeroes(int[][] matrix) {
        // 首先遍历矩阵找到所有的0元素 将其的行和列索引记录下俩
        Map<Integer,Integer> map = new HashMap<>();
        Map<Integer,Integer> map1 = new HashMap<>();

        for(int i  = 0; i < matrix.length; i++){
            for(int  j = 0; j < matrix[0].length; j++){
                if(matrix[i][j] == 0){
                    map.put(i,j);// 将行和列的索引记录下来
                    map1.put(j,i);
                }
            }
        }

        // 遍历矩阵  将所有的需要更新的元素进行更新
        // 也就是查找hashmap中的每一个元素进行更新
        for(int i = 0; i < matrix.length; i++){
            for(int j = 0; j< matrix[0].length; j++){
                if(map.containsKey(i) || map1.containsKey(j)){
                    matrix[i][j] = 0;
                }
            }
        }

        
    }
}
相关推荐
冷yan~8 分钟前
GitHub文档加载器设计与实现
java·人工智能·spring·ai·github·ai编程
CodeBlossom14 分钟前
java加强 -stream流
java·windows·python
理想奋斗中24 分钟前
idea中Lombok失效的解决方案
java·intellij-idea·lombok
保利九里26 分钟前
java中的方法详解
java·开发语言·python
旋风菠萝27 分钟前
项目复习(1)
java·数据库·八股·八股文·复习·项目、
.又是新的一天.1 小时前
使用IDEA创建Maven版本的web项目以及lombok的使用
java·maven·intellij-idea
zimoyin1 小时前
Java 快速转 C# 教程
java·开发语言·c#
Haooog1 小时前
Java 面向对象详解和JVM底层内存分析
java·jvm
CopyLower1 小时前
Java在微服务架构中的最佳实践:从设计到部署
java·微服务·架构