zoukankan      html  css  js  c++  java
  • 贪心算法讲解及例题

    修改自:http://blog.csdn.net/a925907195/article/details/41314549


    一、概念:

      贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解

      贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关

    二、贪心算法的基本思路:
        1.建立数学模型来描述问题。
        2.把求解的问题分成若干个子问题。
        3.对每一子问题求解,得到子问题的局部最优解。
        4.把子问题的解局部最优解合成原来解问题的一个解。
    三、贪心算法适用的问题
    贪心策略适用的前提是:局部最优策略能导致产生全局最优解。实际上,贪心算法适用的情况很少。一般,对一个问题分析是否适用于贪心算法,可以先选择该问题下的几个实际数据进行分析,就可做出判断。
    四、例题分析:
    1、背包问题:http://www.cnblogs.com/LuRenJiang/p/6978257.html(注:文章开头给的博客的背包问题有错误,详见本链接。)
    2、均分纸牌:http://www.cnblogs.com/LuRenJiang/p/6978262.html
    3、最大整数:http://www.cnblogs.com/LuRenJiang/p/6978265.html
    祝你早日攒够失望,然后开始新的生活。
  • 相关阅读:
    debian配置apache2.4配置虚拟主机遇到的问题
    Javascript关于attachEvent和addEventListener区别与兼容写法
    图解linux下top命令的使用
    idea报错:java 不支持发行版本5
    java-访问权限
    IDEA图标含义
    IDEA生成UML类图
    idea快捷键
    idea同时运行两个main()
    idea关闭vim编辑模式
  • 原文地址:https://www.cnblogs.com/LuRenJiang/p/6978253.html
Copyright © 2011-2022 走看看