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

        
    }
}
相关推荐
k-l.6 分钟前
【通过jdbc连接到kingbase数据库插入10w数据】
java·数据库
MORE_777 分钟前
leecode-灌溉花园-贪心算法and动态规划
算法·贪心算法·动态规划
毕设源码-朱学姐8 分钟前
【开题答辩全过程】以 基于java的书店用户管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
gis分享者12 分钟前
华为OD面试-Java、C++、Pyhton等多语言实现-目录
java·c++·华为od·面试·目录·od·机试
kyle~12 分钟前
C++--- dlsym 调用封装好的算法动态库的核心工具 <dlfcn.h>
开发语言·c++·算法
于先生吖16 分钟前
2026 新版上门回收系统源码 JAVA 同城服务平台搭建指南
java·开发语言
似水এ᭄往昔17 分钟前
【初阶数据结构】--排序算法
数据结构·算法·排序算法
2301_7811435621 分钟前
C语言笔记(四)
c语言·笔记·算法
MX_935926 分钟前
Spring整合Web环境实现思路
java·开发语言·后端·spring
Darkdreams30 分钟前
总结 Spring 注入 bean 的四种方式
java·后端·spring