2.16 求数组中最长的递增子序列
2012-09-13 18:11
302 查看
#include <stdio.h> #include <stdlib.h> int max(int *a,int len)//求数组的最大元素 { int i,max; max=a[0]; for(i=1;i<len;i++) { if(a[i]>max) max=a[i]; } return max; } int LIS(int * array,int n) { int i,j; int *lis=(int *)malloc(n*sizeof(int));//lis[i]为包含第i个元素的最长递增子序列的长度 for(i=0;i<n;i++) { lis[i]=1; for(j=0;j<i;j++) { if(array[i]>array[j]&&lis[j]+1>lis[i]) lis[i]=lis[j]+1; } } return max(lis,n); } int main() { int str[]={1,-1,2,-3,4,-5,6,-7}; int max=LIS(str,8); printf("max:%d\n",max); }
相关文章推荐
- [编程之美] PSet2.16 求数组中最长的递增子序列
- 2.16 最长递增子序列 LIS
- 求数组中最长递增子序列的长度
- 求解数组中最长递增自序列
- 【各种最...】最长公共子序列|最长公共子串|最长重复子串|最长不重复子串|最长回文子串|最长递增子序列|最大子数组和
- 编程之美 2.16 求数组中最长递增子序列
- 【难】求数组中最长递增子序列,时间复杂度O(nlogn)
- 动态规划-数组最长递增子序列长度
- 读书笔记之编程之美 - 2.16 求数组中最长递增子序列
- 找工作知识储备(2)---数组字符串那些经典算法:最大子序列和,最长递增子序列,最长公共子串,最长公共子序列,字符串编辑距离,最长不重复子串,最长回文子串
- 最大子数组和、最长递增子序列、最长公共子串、最长公共子序列、字符串编辑距离
- 找工作知识储备---数组字符串那些经典算法:最大子序列和,最长递增子序列,最长公共子串,最长公共子序列,字符串编辑距离,最长不重复子串,最长回文子串
- 最长公共子序列|最长公共子串|最长重复子串|最长不重复子串|最长回文子串|最长递增子序列|最大子数组和
- 求数组中最长递增子序列的长度
- 求数组中最长递增子序列的长度
- ACM--Maximum Increase--最长递增数组序列
- 最大子数组之和、最大子数组之积、最长递增子序列求法
- 求数组中最长递增子序列的解决方法
- 一维数组中最长递增子序列的长度(DP做法)
- 数组中最长递增子序列的长度