我想出了一个简单的递归解决方案,用于递增最长的子序列。 但是,您能否帮助将记忆纳入此递归解决方案?递归的记忆递增最长递增子序列
public int findLIS(int a[], int maxSoFar, int item, int count) {
if(item == a.length) {
return count;
}
int length1 = findLIS(a,maxSoFar, item+1, count);
int length2 = 0;
if(a[item] > maxSoFar) {
length2 = findLIS(a, a[item], item+1, count + 1);
}
return Math.max(length1, length2);
}
PS:这不是一个家庭作业问题,更重要的是我的兴趣。
这是什么语言? – irrelephant
爪哇,但你可以很容易地转换为你最喜欢的语言。 我可以为你做,如果你想 – coder000001