动态规划问题
文章平均质量分 62
overstack
中大研究生喜欢linux后台技术各种架构研究方向是机器学习和数据挖掘
展开
-
最长回文子串
/* * ===================================================================================== * * Filename: Longest_Palindromic_Substring.cpp * * Description: * * Version: 1.0原创 2013-01-11 00:59:34 · 536 阅读 · 0 评论 -
动态规划--整齐打印
问题: 考虑在一个打印机上整齐地打印一段文章的问题。输入的正文是n个长度分别为L1、L2、……、Ln(以字符个数度量)的单词构成的序列。我们希望将这个段落在一些行上整齐地打印出来,每行至多M个字符。“整齐度”的标准如下:如果某一行包含从i到j的单词(i<j),且单词之间只留一个空格,则在行末多余的空格字符个数为 M - (j-i) - (Li+ …… + Lj),它必须是非负值才能让该行容纳这原创 2013-03-04 13:38:38 · 1290 阅读 · 0 评论 -
最长递增子序列 (Longest Increasing Subsequence)
问题描述: 给定一个序列 An = a1 ,a2 , ... , an ,找出最长的子序列使得对所有 i j ,ai aj 。显然,暴力算法的时间复杂度是 O(2n ) ,因为搜索空间呈指数级增长。对于这种问题,如果要找复杂度为多项式时间的算法,自然而然地会想到动态规划。首先,要找出一种方法把该问题分解成只有多项式个子问题。考虑 a n 。如果最长递增子序列不 包含 an ,则问题变成要转载 2013-04-13 00:25:17 · 738 阅读 · 0 评论 -
最长单调递增子序列
1.问题描述:求一个正整数序列的最长单调自增子序列,子序列不要求是连续的。例如Input:55 2 4 3 1Output:22. 算法复杂度是O(N^2)其实这也是一个DP的方法!f[i]是以a[i]为最大值的子序列,那么f[]的最大值就是要的结果。int f[],a[];f[0] = 1;// base casef转载 2013-03-04 10:28:23 · 2398 阅读 · 0 评论