3033.力扣每日一题7/5 Java

  • 博客主页:音符犹如代码
  • 系列专栏:算法练习
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

目录

思路

解题方法

时间复杂度

空间复杂度

Code


思路

首先创建一个与输入矩阵相同大小的新矩阵 answer 来存储最终结果。
然后遍历输入矩阵的每个元素。
对于值为 -1 的元素,通过内层循环找到其所在列的最大值,并将该最大值赋给新矩阵对应位置。

解题方法

使用两个嵌套的循环遍历矩阵的每个元素。对于值为 -1 的元素,再使用一个内层循环找到其所在列的最大值。

时间复杂度

O(m²*n)

空间复杂度

𝑂(𝑚∗𝑛)

Code

java 复制代码
class Solution {
    public int[][] modifiedMatrix(int[][] matrix) {
        int m = matrix.length;
        int n = matrix[0].length;

        int[][] answer = new int[m][n];

        for (int i = 0; i < m; i++) {
            for (int j = 0; j < n; j++) {
                answer[i][j] = matrix[i][j];
                if (matrix[i][j] == -1) {
                    int max = Integer.MIN_VALUE;
                    for (int k = 0; k < m; k++) {
                        max = Math.max(max, matrix[k][j]);
                    }
                    answer[i][j] = max;
                }
            }
        }

        return answer;
    }
}

我的成就,当归功于精微的思索。------牛顿

相关推荐
H_z_q240118 小时前
RHCE的时间服务器与NTP、chrony
java·运维·服务器
一起努力啊~18 小时前
算法刷题--链表
数据结构·算法·链表
mit6.82418 小时前
dfs|并查集
算法
悟空码字19 小时前
三步搞定短信验证码!SpringBoot集成阿里云短信实战
java·spring boot·后端
码农爱学习19 小时前
C语言结构体对齐是怎么计算
java·c语言·数据库
数据大魔方19 小时前
【期货量化进阶】期货Tick数据分析与应用:高频数据入门(TqSdk完整教程)
python·算法·数据挖掘·数据分析·github·程序员创富·期货程序化
黎雁·泠崖19 小时前
吃透Java操作符入门:分类差异+进制转换+原反补码 核心前置知识(Java&C对比)
java·c语言·开发语言
天天摸鱼的java工程师19 小时前
volatile 关键字底层原理:为什么它不能保证原子性?
java·后端
钟良堂19 小时前
Java完整实现 MinIO 对象存储搭建+封装全套公共方法+断点上传功能
java·minio·断点上传