【发布时间】:2012-09-09 15:11:17
【问题描述】:
LIS (Longest Increasing Subsequence) 问题在解决其他 CS 问题方面有多大用处?有一些算法,使用耐心排序、动态规划或决策树。这些在现实生活中是如何使用的——可能用于数据流或其他什么?
为了提醒你,我用粗体表示最长的递增序列
{0, 8, 4, 12, 2, 10, 6, 14, 1, 9、5、13、3、11、7、15}。
作为奖励,有没有办法使用a sequence of length mn + 1 will have an increasing subsequence of length m or a decreasing subsequence of length n 的结果?例如。我们的列表长度为 16,因此应该有长度为 5 的递增序列或长度为 5 的递减序列。在我们的例子中 0,2,6,9,11,15。
也是长度为 8 的递增序列或长度为 3 的递减序列:在我们的例子中是 12,10,1。
【问题讨论】:
-
长度为 mn+1 的序列将具有长度为 m+1 的递增子序列(不是 m)或长度为 n+1 的递减子序列b>(不是 n)。 16=3x5+1,所以应该有长度为 5+1=6 的递增或递减子序列。
-
抱歉编辑。我有问题
标签: algorithm language-agnostic