Java | Leetcode Java题解之第354题俄罗斯套娃信封问题

题目:

题解:

java 复制代码
class Solution {
    public int maxEnvelopes(int[][] envelopes) {
        if (envelopes.length == 0) {
            return 0;
        }
        
        int n = envelopes.length;
        Arrays.sort(envelopes, new Comparator<int[]>() {
            public int compare(int[] e1, int[] e2) {
                if (e1[0] != e2[0]) {
                    return e1[0] - e2[0];
                } else {
                    return e2[1] - e1[1];
                }
            }
        });

        int[] f = new int[n];
        Arrays.fill(f, 1);
        int ans = 1;
        for (int i = 1; i < n; ++i) {
            for (int j = 0; j < i; ++j) {
                if (envelopes[j][1] < envelopes[i][1]) {
                    f[i] = Math.max(f[i], f[j] + 1);
                }
            }
            ans = Math.max(ans, f[i]);
        }
        return ans;
    }
}
相关推荐
代码萌新知19 分钟前
设计模式学习(五)装饰者模式、桥接模式、外观模式
java·学习·设计模式·桥接模式·装饰器模式·外观模式
iナナ3 小时前
Spring Web MVC入门
java·前端·网络·后端·spring·mvc
驱动探索者3 小时前
find 命令使用介绍
java·linux·运维·服务器·前端·学习·microsoft
卷Java3 小时前
违规通知功能修改说明
java·数据库·微信小程序·uni-app
CoderYanger3 小时前
优选算法-双指针:2.复写零
java·后端·算法·leetcode·职场和发展
小雨凉如水3 小时前
k8s学习-pod的生命周期
java·学习·kubernetes
李宥小哥3 小时前
C#基础10-结构体和枚举
java·开发语言·c#
领创工作室4 小时前
安卓设备分区作用详解-测试机红米K40
android·java·linux
朝新_4 小时前
【EE初阶 - 网络原理】网络通信
java·开发语言·网络·php·javaee
TeleostNaCl5 小时前
使用 jintellitype 库在 Java 程序中实现监听 Windows 全局快捷键(热键)
java·开发语言·windows·经验分享·kotlin·电脑