zoukankan      html  css  js  c++  java
  • 贪婪活动选择问题和背包问题



            今天上午听了米老师讲的算法,感觉收获非常多,对于算法更加有信心了。首先,先来宏观看一下:

     

           




               这三种算法总的来说,刚開始看的时候不知道怎么下手,可是看多了也会有那么一点儿感觉。分治法是这三种算法里面都有的思想,动态规划和贪心都是将问题分解成子问题求解,但动态规划里面的子问题都带有联系,而贪心算法里面的子问题都相对独立,唯一不同的是,贪心算法要首先想出一个解决方式来构造求解最优解的过程。


         宏观介绍下算法后,来看看贪心算法的两个实例。


       一,活动选择问题


        

              


        解决方式:   

                  对于活动的选择问题,我们求解过程是这种,先把这些活动依照结束时间从早到晚排列,然后从第一个開始选择,假设第i个活动的開始时间比第i-1个活动的结束时间晚,我们就将此活动增加到解集合中。


           

        伪代码解读:



              递归方式求解:


       




                迭代方式求解:





       假设看完伪代码后还是没什么感觉,能够用以下的一些数据进行计算:

              


        



    二,背包问题

           



       解决方式:


               由于能够部分装入背包,所以,我们将物品依照单位价值从大到小排序,依次选取,直到背包被装满为止。


     伪代码解读:


            



          

           小结,本来也想写写动态规划的伪代码注解的,but......我也不太懂,算法一直以来是我比較弱的地方,可是感觉研究起来,也是最有意思的,跪求大神參与讨论~~~~~~~

           

      



  • 相关阅读:
    (原)学习ORACLE 视图
    (原)学习ORCALE 表和约束
    下班前网上搜集的方法哈哈
    (传)Visual C# WinForm中DataGrid批量删除解决之道。
    (原)学习ORCALE索引
    用于图片切割,图片压缩,缩略图的生成(转到一个好东西)
    NET 2.0 WinForm Control DataGridView 编程36计(转)
    一些常用PLSQL语句 和事务
    温故知新的经典书评《Programming C# 》中文版第4版
    我最恐惧的事情是竞争力的丧失(转)
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4555485.html
Copyright © 2011-2022 走看看