学习要点:1、概念2、基本要素(+与动态规划算法的差异)3、应用范例:(1)活动安排问题(2)最优装载问题(3)哈夫曼编码(4)最优服务次序问题(5)最小生成树(6)最大边权值最小的生成树(7).......1、概念贪心算法总是作出当前看来是最好的选择。也就是说贪心算法并不从整体最优上加以考虑,它所...
分类:
其他好文 时间:
2014-07-22 23:12:53
阅读次数:
413
引入:最长公共子序列常用于解决字符串的相似度问题。最长公共子序列(LongestCommonSubsequence,LCS)与最长公共字串(LongestCommonSubstring):子串是串的一个连续的部分,子序列则是从不改变序列顺序,而从序列中去掉任意多个元素而获得的新的序列;也就是说,子串...
分类:
其他好文 时间:
2014-07-22 23:12:35
阅读次数:
357
http://acm.nyist.net/JudgeOnline/problem.php?pid=708状态转移方程的思路:对于一个数N,可以是N
- 1的状态+1 得到,另外,也可以是(n / 2) * (1 + 1)得到,同理对于任意的奇数p,都有如果n可以整除p,都有f(n / p) + f(...
分类:
其他好文 时间:
2014-04-30 21:26:26
阅读次数:
519
2014-04-29
00:20题目:给定一个长字符串,和一个词典。如果允许你将长串分割成若干个片段,可能会存在某些片段在词典里查不到,有些则查得到。请设计算法进行分词,使得查不到的片段个数最少。解法:用空间换取时间的动态规划算法,首先用O(n^2)的时间判断每一个片段是否在字典里。这个过程其实可以...
分类:
其他好文 时间:
2014-04-29 14:53:55
阅读次数:
470
2014-04-29
01:05题目:数数从0到n总共有多少个数字‘2’?解法:数位动态规划,可以O(log10(n))时间内解决。代码: 1 // 18.4 Count the
number of 2s from 0 to n. 2 #include 3 using namespace std;....
分类:
其他好文 时间:
2014-04-29 14:44:34
阅读次数:
380
2014-04-29
04:30题目:给定一个由‘0’或者‘1’构成的二维数组,找出一个四条边全部由‘1’构成的正方形(矩形中间可以有‘0’),使得矩形面积最大。解法:用动态规划思想,记录二维数组每个元素向上下左右四个方向各有多少个连续的‘1’,然后用O(n^3)时间计算出满足条件的最大正方形。时间...
分类:
其他好文 时间:
2014-04-29 14:22:02
阅读次数:
518
2014-04-29
04:40题目:给定一个字母组成的矩阵,和一个包含一堆单词的词典。请从矩阵中找出一个最大的子矩阵,使得从左到右每一行,从上到下每一列组成的单词都包含在词典中。解法:O(n^3)级别的时间和空间进行动态规划。这道题目和第17章的最后一题很像,由于这题的时间复杂度实在是高,我动手写...
分类:
其他好文 时间:
2014-04-29 14:21:00
阅读次数:
498
Corn Fields
Time Limit: 2000MS
Memory Limit: 65536K
Total Submissions: 6460
Accepted: 3436
Description
Farmer John has purchased a lush new rectangular pasture compos...
分类:
其他好文 时间:
2014-04-29 13:37:20
阅读次数:
339
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.
Note: You can only move either down or right at...
分类:
其他好文 时间:
2014-04-28 10:46:41
阅读次数:
311
leetcode, Regular Expression Matching...
分类:
其他好文 时间:
2014-04-27 21:24:04
阅读次数:
272