[英]How can we assure that a Bitonic sequence will be formed from one longest increasing subsequence and one longest decreasing subsequence?
例如,我们有一个array[]={1,3,2,7,4,6,8,9}
。
此array[]={1,3,4,6,8,9}
最长递增子序列,其长度= 6。
此array[]={3,2}
最长递减子序列,其长度= 2。
那么这个array[]={1,3,4,6,8,9}
双子序列是array[]={1,3,4,6,8,9}
吗? 如果是,则其长度= 6。但是,双子序列的长度= lis的长度+ lds -1的长度,此处它们不相等。
如果没有,如何证明双子序列的长度= lis的长度+ lds-1的长度
如果我错了,请纠正我。 谢谢。
该公式是正确的,并且仅给出6 ...考虑LIS [](作为LIS数组)和LDS [](作为LDS数组)。现在,当您从左向右迭代时,您将到达LIS [index ] = 6,即LIS直到array [7]为6。现在LDS [index = 7]为1(平时一个元素是序列的最大长度)...现在LIS [7] + LDS [7] -1 = (6 + 1-1)
现在,您需要双音序列的证明... LIS [i],LDS [i]表示直到i的最长递增/递减序列。 现在,最终您想要最大化它,这就是为什么您要在样本空间中进行搜索! 因此答案将是(LIS [i] + LDS [i] -1)的最大值0 <= i <= n-1 ... -1是由于在第i个位置重复包含元素!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.