动态规划
文章平均质量分 62
gavenyeah
北京师范大学计算机专业研究生
展开
-
JAVA动态规划(二)--最长公共子序列问题(LCS_subSequence)的三种解法与最长公共子字符串(LCS_subString)的两种解法与最长回文串(LongestPalindrome)
动态规划法经常会遇到复杂问题不能简单地分解成几个子问题,而会分解出一系列的子问题。简单地采用把大问题分解成子问题,并综合子问题的解导出大问题的解的方法,问题求解耗时会按问题规模呈幂级数增加。为了节约重复求相同子问题的时间,引入一个数组,不管它们是否对最终解有用,把所有子问题的解存于该数组中,这就是动态规划法所采用的基本方法。【问题】 求两字符序列的最长公共字符子序列问题描述:字符序列的子序列是指从给原创 2016-04-03 12:14:03 · 2190 阅读 · 1 评论 -
JAVA动态规划(三)--最长回文字符串(可删除中间字符)【腾讯2016实习生笔试题】
题目:所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如:”aba”,”abba”.对于一个字符串,可以通过删除某些字符二编程回文字符串,如:“cabebaf”,删除“c,e,f”后剩下子串“abba”就是回文字符串。 要求:给定任意一个字符串,字符串的最大长度1000,计算出最长的回文字符串长度。 输入:字符串 输出:最大的回文字符串的长度。分析:对于可删除的最大回文字原创 2016-04-04 15:35:34 · 3981 阅读 · 1 评论 -
JAVA动态规划(五)--01背包问题及装箱问题
问题:01背包是在M件物品取出若干件放在空间为W的背包里,每件物品的体积为W1,W2……Wn,与之相对应的价值为P1,P2……Pn。在给定容量为C的条件下,求如何选取物体使带来的价值最大化。分析:记发f(m, n)表示给定第一件至第m件物品时,给定容量为n 时的最大价值。 则:状态转移方程: f(i,j)=max{f(i-1,j-wi)+vi, f(i-1,j)}java代码如下:package原创 2016-04-22 22:07:09 · 8483 阅读 · 0 评论 -
大搬家 (2016"百度之星" - 测试赛(热身,陈题))--Java代码
原题:(地址http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=695&pid=1001)1001 大搬家 Accepts: 1516 Submissions: 6288 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K原创 2016-05-13 17:49:47 · 766 阅读 · 0 评论 -
JAVA动态规划(四)--根据给定0和1的个数,求字典序排在第K位的数【微软笔试题】
题目: Time Limit: 10000ms Case Time Limit: 1000ms Memory Limit: 256MB Description Consider a string set that each of them consists of {0, 1} only. All strings in the set have the same number of 0s a原创 2016-04-22 22:00:56 · 2177 阅读 · 0 评论 -
动态规划之 368Largest Divisible Subset
这是leetcode上的关于动态规划的一道题,先来看下原题: 368. Largest Divisible Subset QuestionEditorial Solution My Submissions Total Accepted: 3593 Total Submissions: 12097 Difficulty: Medium Given a set of distinct po原创 2016-07-11 19:43:52 · 1244 阅读 · 0 评论