【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;
                }
            }
        }

        
    }
}
相关推荐
独自破碎E5 分钟前
kafka中的时间轮实现
java·开发语言
程序员阿鹏9 分钟前
如何保证写入Redis的数据不重复
java·开发语言·数据结构·数据库·redis·缓存
uup14 分钟前
Future.get () 的潜在陷阱
java
狂奔小菜鸡19 分钟前
Day36 | Java中的线程池技术
java·后端·java ee
短视频矩阵源码定制19 分钟前
好用的矩阵系统机构
大数据·人工智能·矩阵
明朝百晓生23 分钟前
强化学习[chapter8] [page17] Value Function Methods
人工智能·算法
sheji341625 分钟前
【开题答辩全过程】以大学校园点餐系统为例,包含答辩的问题和答案
java
POLITE335 分钟前
Leetcode 56.合并区间 JavaScript (Day 6)
算法·leetcode·职场和发展
苏婳66639 分钟前
Java---SSH(MVC)面试题
java·ssh·mvc
叶 落1 小时前
[Maven 基础课程]13_Maven 私服的使用
java·maven