leetcode 300. Longest Increasing Subsequence
来源:互联网 发布:java人员管理系统 编辑:程序博客网 时间:2024/06/06 07:36
300. Longest Increasing Subsequence
Given an unsorted array of integers, find the length of longest increasing subsequence.
For example,
Given [10, 9, 2, 5, 3, 7, 101, 18]
,
The longest increasing subsequence is [2, 3, 7, 101]
, therefore the length is 4
. Note that there may be more than one LIS combination, it is only necessary for you to return the length.
Your algorithm should run in O(n2) complexity.
Follow up: Could you improve it to O(n log n) time complexity?
way-1 普通遍历
class Solution {public: int lengthOfLIS(vector<int>& nums) { if (nums.empty()) return 0; int ret = INT_MIN; vector<int> a(nums.size(), 1); for (int i = 0; i < nums.size(); i++) { for (int j = i - 1; j >= 0; j--) { if (nums[i] > nums[j]) { a[i] = max(a[i], a[j] + 1); } } ret = max(ret, a[i]); } return ret; }};
class Solution {public: int lengthOfLIS(vector<int>& nums) { if (nums.empty()) return 0; multimap<int, int> mm; mm.insert(make_pair(1, nums[0])); for (int i = 1; i < nums.size(); i++) { int k = 1; for (auto it = mm.rbegin(); it != mm.rend(); it++) { if (nums[i] > it->second) { k = it->first + 1; break; } } mm.insert(make_pair(k, nums[i])); } return mm.rbegin()->first; }};
阅读全文
0 0
- Leetcode-300.Longest Increasing Subsequence
- 300. Longest Increasing Subsequence LeetCode
- [leetcode] 300. Longest Increasing Subsequence
- leetcode 300. Longest Increasing Subsequence
- LeetCode *** 300. Longest Increasing Subsequence
- LeetCode 300. Longest Increasing Subsequence
- LeetCode-300.Longest Increasing Subsequence
- [leetcode] 300. Longest Increasing Subsequence
- leetcode 300. Longest Increasing Subsequence
- LeetCode 300. Longest Increasing Subsequence
- leetcode 300. Longest Increasing Subsequence
- [LeetCode]--300. Longest Increasing Subsequence
- [leetcode] 300. Longest Increasing Subsequence
- LeetCode 300. Longest Increasing Subsequence
- 【LeetCode】300. Longest Increasing Subsequence
- 【LeetCode】300. Longest Increasing Subsequence
- Leetcode 300. Longest Increasing Subsequence
- 【LeetCode】300. Longest Increasing Subsequence
- 有关于用css来进行网页布局的一些问题week4
- angualr2 项目环境注意事项
- mong启动报错:api-ms-win-crt-runtime-l1-1-0.dll 丢失
- 使用Gson解析复杂的json数据
- SDN中的服务链(SFC)
- leetcode 300. Longest Increasing Subsequence
- 账号管理器的代码实现
- 【数字化】推动5大层面变革——BCG和MIT帮你设计卓越数字化组织
- SDRAM学习
- python2 多线程和多进程、协程入门讲解
- HBase读性能优化策略
- java_home中JDK已经修改为1.7,但是cmd命令下的java还是1.8
- 【深度学习】中科院计算所:潘汀——深度学习框架设计中的关键技术及发展趋
- 【财富空间】AI时代,企业如何利用机器学习技术驱动业务发展?