当前位置: 首页 > news >正文

综合算法 II | 分治与贪心

综合算法 II | 分治与贪心

分治算法

分治(Divide and Conquer)将大问题分解为小问题,分别求解后合并结果。

归并排序

def merge_sort(arr): if len(arr) <= 1: return arr mid = len(arr) // 2 left = merge_sort(arr[:mid]) right = merge_sort(arr[mid:]) return merge(left, right) def merge(left, right): result = [] i = j = 0 while i < len(left) and j < len(right): if left[i] <= right[j]: result.append(left[i]) i += 1 else: result.append(right[j]) j += 1 result.extend(left[i:]) result.extend(right[j:]) return result

快速排序

def quick_sort(arr): if len(arr) <= 1: return arr pivot = arr[len(arr) // 2] left = [x for x in arr if x < pivot] middle = [x for x in arr if x == pivot] right = [x for x in arr if x > pivot] return quick_sort(left) + middle + quick_sort(right)

贪心算法

贪心(Greedy)在每一步选择当前最优解,期望得到全局最优。

活动选择问题

def activity_selection(activities): activities.sort(key=lambda x: x[1]) count = 1 end = activities[0][1] for i in range(1, len(activities)): if activities[i][0] >= end: count += 1 end = activities[i][1] return count

哈夫曼编码

哈夫曼编码使用贪心构建最优前缀码。

分治与贪心对比

特点分治贪心
策略分解后合并局部最优
最优性保证最优不一定最优
复杂度通常 O(n log n)因问题而异

总结

分治和贪心是两种重要的算法策略。分治保证最优,贪心效率高但需验证。

http://www.jsqmd.com/news/915209/

相关文章:

  • 2026年武汉旧房翻新深度调研:覆盖6区480户业主回访与权威评测 - 优家闲谈
  • 如何解决空洞骑士Mod安装后游戏崩溃的完整指南
  • 2026最新内江市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 2026最新遂宁市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 2026最新芜湖市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 5步掌握MiMo-VL-7B推理:从安装到实战的完整指南
  • LeetCode210.课程表II
  • 2026年嘉峪关市本地黄金回收白银回收铂金回收靠谱门店权威榜第一名:足金首饰+投资金条+银条+旧料黄金上门变现无套路收费+门店地址及联系方式推荐 - 前途无量YY
  • 告别Android设备连接烦恼:UniversalAdbDriver终极解决方案
  • 2026最新宁波市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • UE5蓝图实战:用样条线+Spline组件打造可交互的3D空间测距工具(附完整项目文件)
  • 2026最新吴忠市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 2026最新台州市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 神经渲染新纪元:扩散模型原理、应用与未来展望
  • STVP烧录STM8时,那个让人头疼的‘Option Byte’页面到底该怎么用?
  • Go Web项目实战:接收上传的Excel文件,处理后再下载(附完整代码)
  • 2026年江门市本地黄金回收白银回收铂金回收靠谱门店权威榜第一名:足金首饰+投资金条+银条+旧料黄金上门变现无套路收费+门店地址及联系方式推荐 - 前途无量YY
  • 保姆级教程:用Arduino IDE 2 + STM32Duino搞定STM32开发环境(含ST-Link驱动、CubeProgrammer配置全流程)
  • 2026最新太原市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • STM 32 TIM定时器(1)
  • Claude 4.7 Opus 新手极速上手指南
  • 装修全屋定制高频问答:新手一站式答疑解惑
  • 2026最新宁德市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 无核边界积分法:Brinkman界面问题的配点法与单位分解求解
  • 别再瞎调了!用这个Python脚本可视化分析你的DeepRacer奖励函数效果
  • python 使用命令 pip install xxx,安装库失败时
  • 2026年焦作市本地黄金回收白银回收铂金回收靠谱门店权威榜第一名:足金首饰+投资金条+银条+旧料黄金上门变现无套路收费+门店地址及联系方式推荐 - 前途无量YY
  • 告别远程桌面!在Win10上像本地一样管理AD域控的保姆级教程
  • 2026最新攀枝花市黄金回收铂金回收白银回收怎么选?多家靠谱门店实测对比及联系方式推荐 - 亦辰小黄鸭
  • 安路Modelsim仿真库编译