贪心算法总结

来源:互联网 发布:访客网络是用2.4还是5g 编辑:程序博客网 时间:2024/05/22 05:27

注:以下有一些为笔记

使用贪心算法求解问题应该考虑如下几个方面:

(1)候选集合A:为了构造问题的解决方案,有一个候选集合A作为问题的可能解,即问题的最终解均取自于候选集合A。
(2)解集合S:随着贪心选择的进行,解集合S不断扩展,直到构成满足问题的完整解。
(3)解决函数solution:检查解集合S是否构成问题的完整解。
(4)选择函数select:即贪心策略,这是贪心法的关键,它指出哪个候选对象最有希望构成问题的解,选择函数通常和目标函数有关。
(5)可行函数feasible:检查解集合中加入一个候选对象是否可行,即解集合扩展后是否满足约束条件。


利用贪心策略解题,需要解决两个问题:

(1)该题是否适合于用贪心策略求解;

(2)如何选择贪心标准,以得到问题的最优/较优解。

这种策略是一种很简洁的方法,对许多问题它能产生整体最优解,但不能保证总是有效,因为它不是对所有问题都能得到整体最优解。

因为是第一次接触acm,所以感觉做题什么的都有一些吃力,贪心算法以前也是听都没有听过的,包括大一的时候c++的基础比较薄弱

导致有时候做题只能跟着模板做题,脱离了模板就不太会做了,第一次接触算法库,感觉很神奇,我觉得以后我也可以写出更好的东西

,希望下个专题,我可以表现的更好。

0 0
原创粉丝点击