Algorithm 最长递增子序列的长度,O(n)复杂度

Algorithm 最长递增子序列的长度,O(n)复杂度,algorithm,dynamic-programming,Algorithm,Dynamic Programming,此函数是否返回数组a[]中存在的递增子序列的最大长度 int maxLength(int A[], int n) { // n - size of A[] int subRes[n]; subRes[0] = 1; for (int i = 1; i < n; i++) { subRes[i] = (A[i] > A[i-1] ? subRes[i-1] + 1 : 1); } int maxL = 0; for (int

此函数是否返回数组a[]中存在的递增子序列的最大长度

int maxLength(int A[], int n) { // n - size of A[]

   int subRes[n];

   subRes[0] = 1;

   for (int i = 1; i < n; i++) {

       subRes[i] = (A[i] > A[i-1] ? subRes[i-1] + 1 : 1);
   }

   int maxL = 0;
   for (int i = 0; i < n; i++) maxL = max(maxL, subRes[i]);

   return maxL;
}

上述解决方案是不正确的。以上代码用于最长递增序列,而不是子序列。最长递增子序列检查

相关: