300. Longest Increasing Subsequence 类别:动态规划 难度:medium
来源:互联网 发布:怎样在淘宝卖二手书 编辑:程序博客网 时间:2024/06/05 05:27
题目:
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.
思路:
对于每一个i,对于j < i,如果nums[j] < nums[i],则转移方程为dp[i] = max(dp[i],dp[j] + 1)。
程序:
class Solution {public: int lengthOfLIS(vector<int>& nums) { if(nums.size() == 0) return 0; vector<int> dp(nums.size(),1); int m = 1; for(int i = 1;i < nums.size();i++) { for(int j = 0;j < i;j++) { if(nums[i] > nums[j]) dp[i] = max(dp[i],dp[j] + 1); } m = max(m,dp[i]); } return m; }};
0 0
- 300. Longest Increasing Subsequence 类别:动态规划 难度:medium
- 300.LeetCode Longest Increasing Subsequence(medium)[动态规划]
- 376. Wiggle Subsequence 类别:动态规划 难度:medium
- 动态规划-300. Longest Increasing Subsequence
- 300. Longest Increasing Subsequence -Medium
- 120. Triangle 类别:动态规划 难度:medium
- Longest Increasing Subsequence (Medium)
- Leetcode 300. Longest Increasing Subsequence (Medium) (cpp)
- 300. Longest Increasing Subsequence (Medium)
- leetcode 300. Longest Increasing Subsequence-最长子序列|动态规划
- 动态规划中级教程300.Longest Increasing Subsequence
- leetcode-300-Longest Increasing Subsequence 动态规划
- 413. Arithmetic Slices 类别:动态规划 难度:Medium
- 377. Combination Sum IV 类别:动态规划 难度:medium
- 96. Unique Binary Search Trees 类别:动态规划 难度:medium
- 264. Ugly Number II 类别:动态规划 难度:medium
- 63. Unique Paths II 类别:动态规划 难度:medium
- 343. Integer Break 类别:动态规划 难度:medium
- 使用C++实现二叉堆
- tomcat部署项目到本地以及端口相关
- ScrollView中嵌套ViewFlow滑动卡顿解决办法
- iOS开发网络篇—监测网络状态
- VIM 练级攻略
- 300. Longest Increasing Subsequence 类别:动态规划 难度:medium
- java批量修改txt文件名称
- Android 在xml中更改纯色图片颜色
- 贝叶斯算法在mapreduce集群上的具体实现
- POJ 2251 Dungeon Master 已翻译
- 深度学习之入门
- JavaMail使用SMTP协议发送电子邮件(详解)
- oracle SQl 总结
- 计算机中的补码与java取反运算