LeetCode
来源:互联网 发布:淘宝主图视频大小限制 编辑:程序博客网 时间:2024/06/04 22:53
You are given n
pairs of numbers. In every pair, the first number is always smaller than the second number.
Now, we define a pair (c, d)
can follow another pair (a, b)
if and only if b < c
. Chain of pairs can be formed in this fashion.
Given a set of pairs, find the length longest chain which can be formed. You needn't use up all the given pairs. You can select pairs in any order.
Example 1:
Input: [[1,2], [2,3], [3,4]]Output: 2Explanation: The longest chain is [1,2] -> [3,4]
Note:
- The number of given pairs will be in the range [1, 1000].
给你一个pair对数组,若存在(a, b) (c, d) && b < c 那么就能构成一条链,求最长的链的长度
排序,遍历。时间复杂度O(nlgn),空间复杂度O(1)
class Solution {public: int findLongestChain(vector<vector<int>>& pairs) { if (pairs.empty()) return 0; sort(pairs.begin(), pairs.end(), cmp); int cnt = 0; int pre = INT_MIN; for (int i = 0; i < pairs.size(); ++i) { if (pairs[i][0] > pre) { cnt++; pre = pairs[i][1]; } } return cnt; } static bool cmp(vector<int> a, vector<int> b) { if (a[1] == b[1]) return a[0] < b[0]; return a[1] < b[1]; }};
阅读全文
0 0
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode
- leetcode:
- leetcode:
- LeetCode
- leetcode
- LEETCODE
- leetcode
- leetCode
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode:
- leetcode
- Android java 遍历Map的四种方法
- 生产者和消费者线程实现
- 滚动加载
- BZOJ 1787 [Ahoi2008]Meet 紧急集合 题解
- INSTALL_FAILED_PERMISSION_LEVEL_DOWNGRADE
- LeetCode
- 八种排序算法Java实现-堆排序
- 将文件从服务器上cp到另一个服务器
- Find them, Catch them 带权并查集
- 机器学习应用的短板
- 文件转码
- 【noip 2013】火柴排队
- Spring Cloud Eureka 多网卡配置最终版
- c# 编程小技巧