算法设计与分析:贪心算法 - 排课问题(DP与贪心的区别与应用)

本文探讨贪心算法与动态规划在解决排课问题上的应用。通过对排课问题的分析,展示了如何使用动态规划求解,然后提出贪心算法在特定条件下能更快地找到最优解。贪心算法简化了问题,每次选取局部最优解(最早下课的课程),在学生人数相等的情况下,避免了动态规划的重复计算,提高了效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文参考UCAS卜东波老师算法设计与分析课程撰写

前言

前面两大章节的内容分治思想动态规划暂时告一段落,遇到问题如何观察问题,找寻解决的方案是我们关心的点。下面的关系图诠释了问题的观察步骤与解决方案选择:

给定问题
问题是否
正面可解?
能否分解
证明是NP难问题
分治
待定
最优化问题?
动态规划
贪心选择性质?
贪心算法

在动态规划的基础上又可以根据我们的需求选择使用高级动态规划,现在再进一步,在动态规划的基础上依据是否有贪心选择的性质,决定是否采用贪心算法。

贪心算法概念

贪心算法与动态规划十分相像,只不过在动态规划的基础上多了一层贪心选择幸性质,每一次的贪心,我们都是求局部最优解,将这些解组合成了全局最优,当然这点能够成立的前提是问题具有贪心选择性质,我们利用排课问题来具体阐述其差别。

排课问题

问题描述与分析

  • 一间教室被多门课程在不同时段使用,给定第i节课 A i A_i
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值