DP中的LIS:longest increasing subsequence
来源:互联网 发布:淘宝怎么修改商品类目 编辑:程序博客网 时间:2024/06/04 08:58
DP基本都会讲到的一个问题LIS:longest increasing subsequence。
今晚上看了下动态规划, 求解了一下这个lis问题。
首先得看下在wiki上的对longest increasing subsquence的定义和解释:wiki
代码如下:
#include <iostream>using namespace std;int LIS(int A[], int len){int *d = new int[len];int longest_sub = 1;d[0] = 1; /*for (int i = 1; i < len; i++){d[i] = 1;if (A[i-1] <= A[i]){d[i] = d[i-1] + 1;}if (d[i] > longest_sub){longest_sub = d[i];}} */for (int i = 0; i < len; i++){d[i] = 1;for (int j = 0; j < i; j++){if (A[i-1] <= A[i] && d[j] + 1 > d[i]){d[i] = d[j] + 1;}}if (d[i] > longest_sub){longest_sub = d[i];}}delete [] d;return longest_sub;}int main(){int A[] = {5, 3, 4, 8, 6, 7};int ls = LIS(A, 6);cout << "********************************" << endl;std::cout << ls << std::endl;return 0;}
如有错误,请指出,谢谢。
- DP中的LIS:longest increasing subsequence
- Longest Increasing Subsequence(LIS)
- Longest Increasing Subsequence(LIS)
- 最长上升子序列 LIS(Longest Increasing Subsequence)---DP
- Longest Increasing Subsequence,LIS初步
- 【DP】 Longest Increasing Subsequence
- [DP]Longest Increasing Subsequence
- DP-LIS( Longest Increasing Subsequenc)
- Longest increasing substring (LIS)--DP
- Longest Increasing Subsequence (LIS) 的java实现
- 最长非降子序列LIS(longest increasing subsequence)
- LeetCode Longest Increasing Subsequence DP
- 300. Longest Increasing Subsequence/DP
- 数组中的最大递增子序列(Longest Increasing Subsequence<LIS>)
- 【DP】 Record the longest increasing subsequence
- Dynamic Programming之Longest Increasing Subsequence (LIS)问题
- Dynamic Programming之Longest Increasing Subsequence (LIS)问题
- 最长上升子序列 LIS(Longest Increasing Subsequence)
- [各种面试题] 链表相关
- 重定向 1>&2 2>&1
- C++中实现回调机制的几种方式
- 分组背包+树形DP(BY LPX)
- 分布式存储系统设计 反熵 (Anti-Entropy)
- DP中的LIS:longest increasing subsequence
- 从今天开始写博客
- 关于C++中数据基础数据类型的一个杂记
- eclipse svn 切换: eclipse svn 切换项目svn地址
- Android开发入门之采用广播接收者实现短信窃听器
- WebStorm 6.0 代码提示配置
- Android中常用动画效果
- redis笔记--初识redis
- Win7(64bit) + VS2010 +Opencv 2.4.4 配置