贪心算法:格雷厄姆近似算法
发布时间
阅读量:
阅读量
先前已经掌握了多种贪心算法,并且这些方法都能保证得到最优解。其主要原因在于这种策略能够在保证正确性的同时减少计算量。相比其他算法,在时间复杂度和空间复杂度上都具有显著优势。对于那些适合应用这种策略的问题类型
两种关键特性是贪心策略与最优子结构。其中贪心策略指的是在每一步选择中都采取当前最优的选择;而最优子结构则表明该问题可以通过分解为更小的问题来解决整体问题。这与动态规划的方法存在相似之处,但相比之下,动态规划则需要遍历所有可能的状态空间以找到最优解。
间,资源消耗很大。
贪心算法无法总是确保找到全局最优解,在许多情况下其他方法往往难以奏效(其中一些问题完全缺乏可行解,另一些则因计算复杂度过高而难以处理),因此在这些情况下我们可能考虑采用近似算法。当上述情况出现时,则可能考虑采用基于某种合理的贪心准则的近似方案。
哪怕得不到最优解,但权衡之下也是可以接受的。
例如给定一组物品,请将其尽量分为质量相近的两个子集。不难通过经验判断将重量为6克(3+3)与重量为6克(2+2+2)的部分分开。然而这只是一个NP难问题,在数据量极大时会出现不可行的情况。
当前存在组合爆炸的问题。现有方法尚未完全解决这一问题。尽管如此,在n>15时采用枚举法会导致计算时间显著增加。具体来说,在n≤15时采用枚举法进行计算会得到最优解(Optimal Solution),但其时间复杂度为O(2^n)
全部评论 (0)
还没有任何评论哟~
