【发布时间】:2015-11-29 13:20:00
【问题描述】:
问题是找到任何给定数组的 LIS(最长递增子序列)。 前任。 a[]={10,9,7,8,9}; 长度=3; {7,8,9}
所以在 nlogn 中做的一种方式是
- 对数组进行排序
- 取两者的LCS 结果是 LIS。
现在我明白了该怎么做。但是我如何证明它是正确的。这里如何申请 MI?
【问题讨论】:
-
矛盾尝试。假设原始数组中有一个更长的递增子序列,那么....
问题是找到任何给定数组的 LIS(最长递增子序列)。 前任。 a[]={10,9,7,8,9}; 长度=3; {7,8,9}
所以在 nlogn 中做的一种方式是
现在我明白了该怎么做。但是我如何证明它是正确的。这里如何申请 MI?
【问题讨论】:
在你的情况下不需要归纳,你必须展示三件事:
【讨论】: