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

        
    }
}
相关推荐
霸道流氓气质1 分钟前
Spring AI Advisor 完全指南:拦截器机制与实战全解
java·人工智能·spring
XiYang-DING1 分钟前
【Java EE】 HTTPS协议
java·https·java-ee
yqcoder1 分钟前
突破性能瓶颈:深入理解 JavaScript TypedArray
java·开发语言·javascript
ch.ju2 分钟前
Java Programming Chapter 3——Traversal of array
java·开发语言
he___H3 分钟前
子串----
java·数据结构·算法·leetcode
counting money5 分钟前
MavenServlet项目文件上传
java·后端
浩~~5 分钟前
AI-Web 靶场
java·前端·网络
MandalaO_O6 分钟前
Java Web :JDBC CRUD 与前后端交互
java·前端·交互
夫礼者1 小时前
【极简监控】综合实战篇:1+1>>10 的降维打击!联动底层工具,暴力提取 SkyWalking“断头链路”
java·监控
05候补工程师1 小时前
【ROS 2 避坑指南】从 SLAM 实时建图到 Nav2 导航算法深度调优全过程
算法·ubuntu·机器人