大榕树——让我们共成长!
大榕树 myDrs.org
您的位置:大榕树 \ 编程       |  Logo语言   |  Pascal语言   |  信息学奥赛   |  高考保送    |  HTML版本
|  Pascal语言>>算法与技巧>>贪心法基础         本站全文搜索: 友情提示:

贪心法基础
http://www.mydrs.org  7/1/2001  大榕树


贪心法(greedy method)就是...只顾眼前利益,每次都选最好的。

1)解向量
把可行解写成一个N元组的形式,就是解向量。

2)贪心标准
就是眼前“最好”的标准。例如《背包问题》,标准可以是价值,重量或“性价比”

3)贪心算法
对于解向量的每一维,用贪心标准在所有可能值中选择一个加入到解向量中。

4)什么样的问题可以考虑用贪心?
贪心选择性质:选择具有无后效性,即不依赖与以后将要作出的选择。
最优子结构:全局最优包含局部最优。

5)正确性证明的常见方法
反证法是最常见的。通常把一次贪心选择换成另一个值,再把两个可行解加以比较。

一篇英文文章:Greedy Algorithm

下面举个例子:
[题目]删数问题
键盘输入一个高精度的正整数N,去掉其中任意S个数字后使剩下的数最小。
例如:
N=175438, S=4
可以删去7,5,4,8,得到13。

[分析]很容易想到用贪心,但是贪心标准是什么呢?
删S次,每次删的数要使剩下的数尽量小。例如上面的例子,第一次删7,至少比第一次删1,5,4,3,8好!
这样,删数过程是:

175438
15438
1438
138
13

实现很简单,就是从左向右找到第一个i,使n[i]>n[i+1],如果找到了,就删第i个,否则删最后一位。
这里一次选择的i是2,2,2,3,因此解向量是:(2,2,2,3)

作 者:SRbGa
来 源:OIBH
共有5198位读者阅读过此文

  • 上篇文章回溯的基本框架
  • 下篇文章贪心法矩阵胚理论介绍

  • 发送邮件
    保存页面 打印文章 HTML版本 发表评论

    □- 近期热门文章 □- 相关文章
    1. NOIP2006竞赛大纲 [8306]
    2. 七类高中生具有保送资格 [5910]
    3. NOI2006获奖选手名单 [4955]
    4. 关于举办NOIP2006模拟赛的通告 [4106]
    5. Turbo Pascal各语句运行速... [3594]
    6. Turbo王者归来新Delphi免费... [3181]
    7. IOI2006我国4名选手全部获得金... [2945]
    8. 关于APIO2007与IOI2007... [2763]
    9. noip倒计时 by 枯叶蝴蝶 [2683]
    10. 朱泽园:思想上的金牌更重要 [2168]
    矩形条覆盖问题的贪心算法
    埃及分数之和
    贪心法矩阵胚理论介绍
    贪心法基础
     

    关于本站 | 合作伙伴 | 联系方式
    大榕树 版权所有 ©1999-2006 www.myDrs.org 闽ICP备05000721号