动态规划——最长上升子序列
来源:互联网 发布:股民开户数据 编辑:程序博客网 时间:2024/06/05 07:20
你的任务,就是对于给定的序列,求出最长上升子序列的长度。
71 7 3 5 9 4 8
4
这道题是动态规划基础题目,详细的解释一下程序吧:
#include<iostream>
using namespace std;
int b[1001];
int amaxlen[1001];
int main()
{int i,j,n;
cin>>n;
amaxlen[1]=1;
int nmax=-1;
for(i=1;i<=n;i++)
cin>>b[i];
for(i=2;i<=n;i++) //求以第i 个数为终点的最长上升子序列的长度
{int ntmp=0; //记录第i 个数左边子序列最大长度
for(j=1;j<i;j++) //搜索以第i 个数左边数为终点的最长上升子序列长度
{if(b[i]>b[j])
{if(ntmp<amaxlen[j])
ntmp=amaxlen[j];
}
}
amaxlen[i]=ntmp+1;}
for(i=1;i<=n;i++) //筛选最长子序列
if(nmax<amaxlen[i])
nmax =amaxlen[i];
cout<<nmax<<endl;
return 0;}
1 0
- 动态规划——最长上升子序列
- 动态规划——最长上升子序列
- 动态规划——最长上升子序列问题(LIS)
- 动态规划——最长上升子序列问题
- 动态规划——求最长下降/上升子序列
- 动态规划——求最长上升子序列长度
- 最长上升子序列——动态规划
- 动态规划练习——最长上升子序列
- 动态规划——最长上升子序列
- 动态规划——最长上升子序列
- 动态规划——最长上升子序列
- c++动态规划基础——最长上升子序列
- 蓝桥杯训练:动态规划——最长上升子序列
- 动态规划—最长公共上升子序列
- HDU 1423 动态规划—最长公共上升子序列
- 动态规划练习一—1最长上升子序列
- 动态规划:最长上升子序列
- 动态规划-最长上升子序列LIS
- JavaSE 学习参考:Map映射窗口
- .net
- Matlab编程 入门(七)
- Spring中AOP应用-入门篇
- Java中面向字符的输入流
- 动态规划——最长上升子序列
- 值类型和引用类型的转换(装箱和拆箱)
- [LeetCode]257. Binary Tree Paths
- 技术转型产品学习笔记——第二天
- 简易的登录界面
- C++远航之封装篇——深拷贝、浅拷贝
- java.util.ArrayList 线性表类
- 子树
- Pycharm2017最新注册码