贪心算法

✍ dations ◷ 2025-06-07 21:34:06 #代数,算法

贪心算法(英语:greedy algorithm),又称贪婪算法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。比如在旅行推销员问题中,如果旅行员每次都选择最近的城市,那这就是一种贪心算法。

贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解能决定全局最优解。简单地说,问题能够分解成子问题来解决,子问题的最优解能递推到最终问题的最优解。

贪心算法与动态规划的不同在于它对每个子问题的解决方案都做出选择,不能回退。动态规划则会保存以前的运算结果,并根据以前的结果对当前进行选择,有回退功能。

贪心法可以解决一些最优化问题,如:求图中的最小生成树、求哈夫曼编码……对于其他问题,贪心法一般不能得到我们所要求的答案。一旦一个问题可以通过贪心法来解决,那么贪心法一般是解决这个问题的最好办法。由于贪心法的高效性以及其所求得的答案比较接近最优结果,贪心法也可以用作辅助算法或者直接解决一些要求结果不特别精确的问题。

实现该算法的过程:
从问题的某一初始解出发;while 能朝给定总目标前进一步 do,求出可行解的一个解元素;
最后,由所有解元素组合成问题的一个可行解。

最小生成树的算法如Prim算法、Kruskal算法均为贪心算法,其中Prim算法是对图上的节点贪心,而Kruskal算法是对图上的边贪心。

相关

  • 社会心理学异常心理学 行为遗传学 生物心理学 心理药物学 认知心理学 比较心理学 跨文化心理学 文化心理学 差异心理学(英语:Differential psychology) 发展心理学 演化心理学 实验心理学
  • 遗传因子基因(英语:gene)在生物学中指DNA或RNA内编码基因产物(RNA或蛋白质)的合成的核苷酸序列。基因也可视作基本遗传单位,亦即一段具有功能性的DNA或RNA序列。弄清其序列本身的过程叫基
  • 叶庭珪叶庭珪,字嗣忠,号翠岩。瓯宁(今福建建瓯)人。喜读书,好借书,动辄抄录。徽宗政和五年(1115年)进士,初授武邑丞,后任德兴知县。高宗绍兴年间任福清知县,后召为太常寺丞,升迁为兵部郎中,与秦
  • 普密蓬·阿杜德普密蓬·阿杜德(泰语:ภูมิพลอดุลยเดช;皇家音译:Phumiphon Adunyadet;发音: 聆听;1927年12月5日-2016年10月13日),亦称普密蓬大帝,泰国却克里王朝第九代国王,亦称拉玛九世
  • 直同志直同志(英语:Ally / Straight Ally / Heterosexual Ally)是指支持平权运动、性别平等及LGBT权利运动,并质疑同性恋恐惧、双性恋恐惧以及跨性别恐惧等问题的异性恋和顺性别人士
  • 御成败式目御成败式目(日语:ごせいばいしきもく)是日本镰仓时代于贞永元年8月10日(1232年8月27日)由执权北条泰时制定的武士政权法律,因而又称作贞永式目。贞永式目的名称为后世添加,正式名称
  • 3个州、1个区和1个首都直辖市塔吉克斯坦行政区划(塔吉克语:Вилоятҳои Тоҷикистон)包括三个州、一个区和一个首都直辖市(括号内为首府):1.索格特州(苦盏)2.国家直辖区(3.杜尚别)4.哈特隆州(库尔
  • 尚塔尔群岛尚塔尔群岛(又译善塔尔群岛;俄语:Шантарские острова)是位于鄂霍次克海西部的一个群岛。外东北的一部分。属俄罗斯哈巴罗夫斯克边疆区。旧属大清帝国,在《瑷
  • 联邦公报《联邦公报》(英语:Federal Register,缩写:FR 或Fed. Reg,下文为叙述方便,简称“公报”),是美国联邦政府的政府公报(Government gazette)。其内容可概分为美国联邦机构的规则,及拟议中
  • 约翰·索普斯约翰·索普斯(保加利亚语:Jochen Schöps;1983年10月8日-)是一位德国排球运动员。他现在效力于波兰排球联赛Asseco Resovia Rzeszów。他也是德国国家排球队的一员,代表德国参加了