主题
Search

最长递增子序列


给定序列的最长递增(连续)子序列是包含最多元素的递增项的子序列。例如,排列 {6,3,4,8,10,5,7,1,9,2} 的最长递增子序列是 {3,4,8,10}

它可以用 Wolfram 语言 编码如下。

  <<Combintorica`
  LongestContinguousIncreasingSubsequence[p_] :=
    Last[
    Split[Sort[Runs[p]], Length[#1] >= Length[#2]&]
    ]

另请参阅

最长递增分散子序列

使用 Wolfram|Alpha 探索

参考文献

Pemmaraju, S. 和 Skiena, S. "最长递增子序列。" §4.4.6 in 计算离散数学:Mathematica 中的组合数学和图论。 Cambridge, England: Cambridge University Press, pp. 170-172, 2003.Skiena, S. "最长递增子序列。" §2.3.6 in 实现离散数学:使用 Mathematica 的组合数学和图论。 Reading, MA: Addison-Wesley, pp. 73-75, 1990.

在 Wolfram|Alpha 中被引用

最长递增子序列

引用为

魏斯坦,埃里克·W. "最长递增子序列。" 来自 MathWorld--Wolfram 网络资源。 https://mathworld.net.cn/LongestIncreasingSubsequence.html

主题分类