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

        
    }
}
相关推荐
森焱森3 分钟前
无人机三轴稳定化控制(1)____飞机的稳定控制逻辑
c语言·单片机·算法·无人机
循环过三天7 分钟前
3-1 PID算法改进(积分部分)
笔记·stm32·单片机·学习·算法·pid
高兴达19 分钟前
Spring boot入门工程
java·spring boot·后端
萧曵 丶20 分钟前
Spring @TransactionalEventListener
java·数据库·spring·事务·transactional·异步
笑衬人心。21 分钟前
HTTPS详解:原理 + 加解密过程 + 面试问答
java·网络协议·http·面试·https
蓝澈112123 分钟前
弗洛伊德(Floyd)算法-各个顶点之间的最短路径问题
java·数据结构·动态规划
再见晴天*_*31 分钟前
logback 日志不打印
java·服务器·logback
闪电麦坤9532 分钟前
数据结构:二维数组(2D Arrays)
数据结构·算法
幽络源小助理40 分钟前
SpringBoot基于JavaWeb的城乡居民基本医疗信息管理系统
java·spring boot·学习
欧阳有财43 分钟前
[java八股文][Mysql面试篇]日志
java·mysql·面试