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;
    }
}
相关推荐
未若君雅裁2 分钟前
LeetCode 18 - 四数之和 详解笔记
java·数据结构·笔记·算法·leetcode
Bug快跑-13 分钟前
Java、C# 和 C++ 并发编程的深度比较与应用场景
java·开发语言·前端
Moe48832 分钟前
ConcurrentHashMap 重要方法实现原理和源码解析(二)
java·后端
有梦想的攻城狮1 小时前
初识Rust语言
java·开发语言·rust
鱼骨不是鱼翅1 小时前
力扣hot100----1day
python·算法·leetcode·职场和发展
小欣加油1 小时前
leetcode 429 N叉树的层序遍历
数据结构·c++·算法·leetcode·职场和发展
小虾米 ~1 小时前
RocketMQ DefaultMQPushConsumer vs DefaultLitePullConsumer
java·rocketmq·java-rocketmq
q***21601 小时前
【监控】spring actuator源码速读
java·spring boot·spring
Kuo-Teng1 小时前
LeetCode 142: Linked List Cycle II
java·算法·leetcode·链表·职场和发展
Moe4881 小时前
ConcurrentHashMap 重要方法实现原理和源码解析(一)
java·后端