题目大意:n个建筑需要抢修,第i个建筑需要T1时间抢修,必须在T2时间之前抢修完毕,求最多能抢修多少建筑
首先我们对T2排序 然后依次修理 但是这样贪心显然是不正确的 比如说这组数据:
5
10 10
10 20
2 21
2 21
2 21
贪心只能修理前两个,而实际上最多可以修理4个
于是我们考虑修正贪心算法
比如说这组数据,当我们枚举到3的时候,虽然已经无法修理更多了...
分类:
Web程序 时间:
2014-10-28 17:51:59
阅读次数:
256
今天看了一下贪心算法,贪心算法没有具体的算法框架。贪心算法主要找当前看来最好的解,没有考虑整体最优。得到的只是局部最优解。贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关。所以对所采用的贪心策略一定要仔细分析其是否满足...
分类:
编程语言 时间:
2014-10-27 21:13:43
阅读次数:
322
贪心策略适用的前提是:局部最优策略能导致产生全局最优解。
实际上,贪心算法适用的情况很少。一般,对一个问题分析是否适用于贪心算法,可以先选择该问题下的几个实际数据进行分析,就可做出判断。...
分类:
编程语言 时间:
2014-10-27 15:42:47
阅读次数:
183
一、什么是贪心贪心算法嘛、、、就是在对某个问题求解时,总是做出在当前看来是最好的选择In other wors,并不是从整体最优上加以考虑,而是在获得某种意义上的局部最优解二、贪心算法的适用前提局部的最优解能导致最后整体的最优解,即局部的最优解不受该部分以外的东西的影响对于贪心算法,我们需要证明:整...
分类:
其他好文 时间:
2014-10-26 22:32:01
阅读次数:
209
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2126题意:给你n个物品,m元钱,问你最多能买个多少物品,并且有多少种解决方案。一开始想到的是,先解决给m元钱因为我花的钱少就一定能购买够多的物品,因此是个贪心算法。记买最多的物品数为c。然后就是设计状态...
分类:
其他好文 时间:
2014-10-24 01:34:06
阅读次数:
210
这三种算法总的来说,刚开始看的时候不知道怎么下手,但是看多了也会有那么一点儿感觉。分治法是这三种算法里面都有的思想,动态规划和贪心都是将问题分解成子问题求解,但动态规划里面的子问题都带有联系,而贪心算法里面的子问题都相对独立,唯一不同的是,贪心算法要首先想出一个解决方案来构造求解最优解的过程。...
分类:
其他好文 时间:
2014-10-23 20:49:49
阅读次数:
241
最近看完了利用回溯法求八皇后问题,最后成功求解到92种解法,然后在看利用贪心求解背包问题,突然想到其实也可以利用回溯法求解背包问题,本质上回溯法是一个穷举的方式在求. 回溯法求解出的结果肯定是正确的,这也可以验证自己所写的贪心算法的正确性.问题描诉: 设定Wmax为最大重量,W[](0~n-...
分类:
其他好文 时间:
2014-10-22 23:19:23
阅读次数:
313
贪心算法是什么意思?举个例子就很清楚了:现在你有一个能装4斤苹果的袋子,苹果有两种,一种3斤一个,一种2斤一个,怎么装才能得到最多苹果?当然我们人考虑的话当然是拿两个2斤的苹果,就刚好装满了,但是如果按贪心算法拿的话,首先就要把最重的苹果拿下(是不是很符合贪心两个字?),但并没有得到最多苹果。贪心算...
分类:
编程语言 时间:
2014-10-20 20:57:52
阅读次数:
158
一、基本概念
所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。
贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关。所以对所采用的贪心策略一定要仔细分...
分类:
编程语言 时间:
2014-10-20 17:21:26
阅读次数:
201
本题采用哈夫曼编码的思路,采用贪心算法实现。题目ID:1032题目名称:合并果子有效耗时:4325 ms空间消耗:948 KB程序代码: 1 #include 2 #include 3 #include 4 5 using namespace std; 6 7 list lt; 8 9 10 ...
分类:
其他好文 时间:
2014-10-19 11:26:49
阅读次数:
241