- 博客(1)
- 收藏
- 关注
原创 最长上升子序列 题解
3、f[1]<=a[i]<=f[sum]且a[i]不等于f中任意一个数,此时由于f中所有数都位于a[i]前面,且对于a[i]之后的数,我们要使f中任意的上升子序列中最大数尽可能最小,所以我们需要执行的操作为找出一个数v,使f[v-1]<a[i]且f[v]>a[i],此时将f[v]赋值为a[i]。看完题最先想到的是使用数组f[i]表示以第i个数字结尾的最长上升子序列,a[1]~a[i-1]中小于a[i]的f最大值,这里用max[f]表示,f[i]=max[f]+1.//确定不是v的范围f[1]~f[mid]
2023-12-16 21:30:18
383
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人