国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

LIS.學(xué)習(xí)C++ 最長上升序列

2019-11-08 02:19:40
字體:
供稿:網(wǎng)友

給一串?dāng)?shù) 33 4 2 324  44 55  最長上升的序列是 33 44 55 值為3 序列不唯一 長度是唯一的

怎么搞喃 弄一個dp[max]數(shù)組 存放到達(dá)每個位置時(shí)候的最長序列

for(int i=1;i<len;i++)

 for(int j=0;j<i;j++)

  {

if(a[j]<a[i]&&dp[j]+1>dp[i] )

dp[i]=dp[j]+1;

 }醬紫就把整個DP都處理好了。直接輸出最大的那個就可以了。

來完整馬

#ifndef H_HPP#define H_HPP#include <iostream>#include <string>using namespace std;template<typename T>class A{	string str;	int dp[111];public:		A(const string &s);	~A(){};};template<typename T>A<T>::A(const string &s) :str(s){	for (int i = 0; i < 100; i++)		dp[i] = 1;//每個dp至少為1嘛 	int ans = 1;	for (int i = 1; i < str.size(); i++)	{					for (int j = 0; j < i;j++)			{				if (str[j]<str[i]&&dp[j]+1>dp[i])//a j比a i小而且 他dp+1大于dp[i]才可以更新i的dp值			{				dp[i] = dp[j] + 1;			}			 }		if (dp[i] > ans)ans = dp[i];//這里記錄當(dāng)前為止最大的值			}	for (int i = 0; i < str.size(); i++)		cout << dp[i] << " ";}#endif //H_HPP
#include "h.hpp"int main(){	A<int>a("9394397");	system("pause");}嗯就是這樣


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 通化市| 南京市| 莱阳市| 九寨沟县| 恩施市| 万安县| 曲麻莱县| 高青县| 成都市| 江川县| 余江县| 麦盖提县| 武冈市| 和田县| 辽源市| 阿拉善右旗| 伊宁县| 宁强县| 扶风县| 团风县| 尼玛县| 宁明县| 扶风县| 赤峰市| 仪征市| 水城县| 三江| 县级市| 翁源县| 麻城市| 广西| 汽车| 喀什市| 建水县| 许昌市| 习水县| 礼泉县| 枣强县| 抚顺市| 五寨县| 云和县|