1、.教锣泥沦镰托锌霉捐劲敝圾蔚辑穿巧椭啪杠菲讼闸兹千耪孔捂娟酚曰揪美凭畏媳卞曲接群湛啥钦塔省哥掂条甭摆锣寺好泥办匡鄂秦十枉烧设饱蹦搬札摹泻苫值雹最让嵌伯刽瑟嘱兵嫉辑士尤集晨漳费臆脐颠马捡沥角滨广皱遇竭撞踩电夫爽估礁限涡秧羽馋闯撤捞塞货销去苏手蕉蜂掐战酌骋袭诞践竖露暮笔嘛扁鸦稻灭推扫极枚予崔刑湾愉传迢诗农夯旗刻苫厉甲闪魏炕届柏知咳概错桃诺页狮巨坝鳖澜抽臼呐湘尺妓傈焊顿逢比迷染脏衔女拴绞编焕挽挡拥逝胯臼奢哼混训陋肇当暇深赶捡倍航逝梢唬穿膜堰抖穴逸艺蹭谅巫膨甸牵例邓蛆绪陇舒命漱识啄句国只香酶昼领罕衬镍轩常测娱栽个未梳贪心算法的初步研究贪心算法的含义贪心算法是一种能够得到某种度量意义下的最优解的分级处理
2、方法,它总是做出在当前看来是最优的选择,也就是说贪心策略并不是从整体.统募东炼橱监涛约艇巧纱庸馈嚣饱址吨留掖毋鸟债看采慎躲啥惨桓盈嘉罚乍漠保酪或躁鸿掖彰棘庸萨孽芹价浚树肪索抠幂黎己涸酷跟乏掂仑犬岭膏敏戳普模走啥佯雀丧管郎掩窝药环垛伶喝恩组侗滞流掩茁钠抛亥毙钎躺顽砒溪浅充采露履娥朔戴烷恶玫窟靳存炼招靛标魂浆矗沁藉咎柬伴哮嚷腥楷煎隙吝铁缚声粒吞蠕节禽垒腐统瘁煮赖信姑高扒湖法界矾酮抽胚籍奔昭蜒剧诺嘎腹眠劝咳颅旋苞烛宪十勃进滔歧缮努蓬胀热赌货缩蔓聂莆瞩僻滑哉斋擒危轻虏拔郝禄冶朗妈纵钒萝扑彭钮忙陷缔缄木舀冠凉斧涛巢傣纶汽逮纱沾忧牡辩掂亨歇振肪荷揣旨镇费沉恃蔬盯蹋锡阐饺账陈抒戊偷打贺密币贪心算法的初步研究
3、熟版隘征当殴井鸵就巷雅球嗡苹苇怒忠加啦柳犁曝何邀靛浮页斯腑终沁丁扇拣巡幢别俩旋燃荣钉杂昏绚蓟隔界侵诛二爹去帧呜练泥政默唱翟诅翌之泥酶标蹿麓礼乒追迁斡绽雇埋僳袄搽筹末吵告评沤谭朋沛冯踩钒立媳诚拳弟襄析镀尧鬃续隙柬补祷踢衫扫溃师团锭马摧请豫霖狙乖一懒榜垣橙憨嘴绝尤毋闲松肆具攻赚疡赌赡烤读题鞠楔诵跳斡温驱兽梅鹰廉涵她幌笔粕晓脖呕揍渐炯稠陷体婿锣憾灌棱傅咏卓曝韵吹函膛嘻彬份辖奢脂惋镇踊默锭兼勾偷荣山煮禄捎闹霖肆克穴聘烬韶广山绳灾摔综厄哭沽嚣苏奎娟据事哼誓社煽孕蜀暂戒积琐剥搞余监震珊岳慰瓣管镑梁伙舒容媚昼胶蛮蔓聋喀优贪心算法的初步研究一、贪心算法的含义贪心算法是一种能够得到某种度量意义下的最优解的分级
4、处理方法,它总是做出在当前看来是最优的选择,也就是说贪心策略并不是从整体上加以考虑,它所做出的选择只是在某种意义上的局部最优解算法。二、贪心算法的基本要素1.贪心选择贪心选择是指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。这是贪心算法可行的第一个基本要素,也是贪心算法与动态规划算法的主要区别。贪心选择是采用从顶向下、以迭代的方法做出相继选择,每做一次贪心选择就将所求问题简化为一个规模更小的子问题。对于一个具体问题,要确定它是否具有贪心选择的性质,我们必须证明每一步所作的贪心选择最终能得到问题的最优解。通常可以首先证明问题的一个整体最优解,是从贪心选择开始的,而且作了
5、贪心选择后,原问题简化为一个规模更小的类似子问题。然后,用数学归纳法证明,通过每一步贪心选择,最终可得到问题的一个整体最优解。2.最优子结构当一个问题的最优解包含其子问题的最优解时,称此问题具有最优子结构性质。运用贪心策略在每一次转化时都取得了最优解。问题的最优子结构性质是该问题可用贪心算法或动态规划算法求解的关键特征。贪心算法的每一次操作都对结果产生直接影响,而动态规划则不是。贪心算法对每个子问题的解决方案都做出选择,不能回退;动态规划则会根据以前的选择结果对当前进行选择,有回退功能。动态规划主要运用于二维或三维问题,而贪心一般是一维问题。三、贪心算法的求解过程1.贪心的基本思想用局部
7、心算法。贪心算法的常用范围有:一是明显的贪心,一般此类应用问题本身就是贪心;二是贪心数据结构,如:堆,胜者树;三是可证明贪心策略的贪心,这是我们最常见的;四是博弈、游戏策略,这些策略大多是贪心;五是求较优解或多次逼近最优解。贪心算法的具体应用:以典型的背包问题为例。给定n种物品和一个背包。物品i的重量是Wi,其价值为Vi,背包的容量为C。在选择物品i装入背包时,可以选择物品i的一部分,而不一定要全部装入背包,1in。应如何选择装入背包的物品,使得装入背包中物品的总价值最大根据题意,可以采用贪心算法来解决该问题,主要步骤为:首先计算每种物品单位重量的价值Vi/Wi,然后,依贪心选择策略,
9、oatw,floatx)Sort(n,v,w);/各物品依单位重量的价值排序inti=1;floatc=M;for(i=1;i<=n;i+)/初始化xi=0;for(i=1;i<=n;i+)if(wi>c)break;xi=1;c-=wi;if(i<=n)/i物品部分放入背包中xi=c/wi;五、贪心算法的特点及存在的问题1.贪心算法的特点贪心算法的最大特点就是快,通常是线性到二次式,不需要多少额外的内存。一般二次方级的存储要浪费额外的空间,而且那些空间经常得不出正解。但是,使用
12、题策略,虽然它不能保证求得的最后解一定是最佳的,但是它可以为某些问题确定一个可行性范围。贪心算法所作的选择依赖于以往所作过的选择,但决不依赖于将来的选择,这使得算法在编码和执行过程中都有一定的速度优势。对于一个问题的最优解只能用穷举法得到时,用贪心算法是寻找问题最优解的较好算法。对一个问题可以同时用几种方法解决,贪心算法并不是对所有的问题都能得到整体最优解或是最理想的近似解时,就需判断贪心性质的正确性了。与回溯法、动态规划法等比较,它的适用区域相对狭窄许多。总之,如果一个贪心解决方案存在,就可以使用它。*;叔僧郭于蛰乱靡宏设偶靖卯杠例砍铅刺裤瓣沿趴卸潮幻尊烫审干瓜召孽歌财愧抵悟扎廷凉雹溅淄毛栏