上次写的0-1背包问题解决方法是动态规划,其实有的人一看到0-1背包问题时第一反应就是使用贪心法来解决问题。但是贪心法求的结果并不一定就是最优解,举个例子: 用word画的,质量不是很好,凑合着看吧先。。。 可以看出来,贪心法先放最大的最后却不一定得到最大的价值。所以用贪心法解决0-1问题是不靠普的。说着说着就有点离题了~\(≧▽≦)/~
输入
第1行:1个数N,线段的数量(2 <= N <= 10000)
第2 - N + 1行:每行2个数,线段的起点和终点(-10^9 <= S,E <= 10^9)
输出
输出最多可以选择的线段数量。
输入示例
3
1 5
2 3
3 6
输出示例
2
请选取你熟悉的语言,并在下面的代码框中完成你的程序,注意数据范围,最终结果会造成Int32溢出
转载
2017-08-12 20:46:00
103阅读
2评论
活动安排问题 X轴上有N条线段,每条线段有1个起点S和终点E。最多能够选出多少条互不重叠的线段。(注:起点或终点重叠,不算重叠)。 例如:[1 5][2 3][3 6],可以选[2 3][3 6],这2条线段互不重叠。 1 2 3 4 完 活动安排问题 X轴上有N条线段,每条线段有1个起点S和终点E
转载
2017-08-28 23:04:00
120阅读
2评论
问题活动选择问题是一个调度竞争共享资源的多个活动的问题。 设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源(如,演讲会场),而在同一时间内只有一个活动能使用这一资源。活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合。每个活动i都有一个要求使用该资源的开始时间si和一个结束时间fi,且si<fi。如果选择了活动i,则它在半开时间区间[si, fi)
转载
2023-06-12 17:30:03
134阅读
A - 活动安排问题 有若干个活动,第i个开始时间和结束时间是[Si,fi),同一个教室安排的活动之间不能交叠,求要安排所有活动,最少需要几个教室? Input第一行一个正整数n (n <= 10000)代表活动的个数。 第二行到第(n + 1)行包含n个开始时间和结束时间。 开始时间严格小于结束时
转载
2017-12-27 23:16:00
192阅读
2评论
实例:活动安排问题:问题表述:设有n个活动的集合E = {1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活i都有一个要求使用该资源的起始时间si和一个结束时间fi,且si < fi 。如果选择了活动i,则它在半开时间区间[si, fi)内占用资源。若区间[si,&nbs
接下来学习贪心算法和动态规划,学习的过程中由于看的是录播,发现老师上课发现人有些没来有些许失落,下次在没有确定有充足时间的情况下,取消一切网络课程的报名。贪心算法贪心算法在求解某个问题时,总是做出眼前的最大利益,也就是说只顾眼前不顾大局,所以他是局部最优解。贪心算法不是对所有问题都能得到整体最好的解决办法,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的状态不会影响以后的状态
问题描述:现有一批活动,有开始时间和结束时间,如何合理的安排使得尽可能多的活动得以开展; 活动 讲座 会议 演出 电影 辩论赛 考试 开始时间 1 3 0 5 3 7 结束时间 3 4 4 7 6 8 解题思路:如何才能保证安排更多的活动呢?肯定是越早结束越好。所以首先对结束时间按升序排序,再依此选
转载
2019-11-25 15:41:00
131阅读
2评论
1、贪心思想:贪心算法总是作出在当前看来最好的选择,也就是说贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。虽然贪心算法不能对所有问题都得到整体最优解,但对许多问题它能产生整体最优解。在一些情况下,即使贪心算法不能得到整体最优解,其最终结果却是最优解的很好近似2、基本要素: 1)贪心选择性质:只所求问题的整体最优解可以通过一系
转载
2023-09-19 03:37:31
55阅读
【贪心法】--活动安排问题1、活动安排 设有n个活动的集合 E = {1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。 每个活动 i 都有一个要求使用该资源的起始时间 si 和一个结束时间 fi,且 si < fi。如果选择了活动i,则它在半开时间区间
原创
2021-08-25 14:17:13
1761阅读
贪心算法用处很多 在活动安排问题中是个很好的列子,
设有n个活动的集合E=[1,2,...,N],其实每个活动使用同一资源,如演唱会。每个活动都有一个开始时间和一个结束时间,这里用si,fi来表示,如果si大于另一个活动的fj,那么叫做活动i和活动j是相容的。这可以安排活动。
核心代码:
#include "stdio.h"
void
原创
2013-01-03 14:39:13
2058阅读
1、贪心算法 (1)原理:在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解。 (2)特性:贪心算法采用自顶向下,以迭
原创
2022-05-27 22:39:45
676阅读
[贪心+优先队列]活动安排问题题目链接题目有若干个活动,第i个开始时间和结束时间是[Si,fi),同
原创
2022-11-25 19:27:48
99阅读
活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子。该问题要求高效地安排一系列争用某一公共资源的活动。贪心算法提供了一个简单、漂亮的方法使得尽可能多的活动能兼容地使用公共资源。 设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活动i都有一个要求使用该资源的起始时间si和一个结束时间fi,且si <fi 。如果选择了活动i,则它在半开时间区间[si, fi]内占用资源。若区间[si, fi]与区间[sj, fj]不相交,则称活动i与活动j是相容的。也就是说,当
转载
2012-10-19 16:44:00
304阅读
2评论
活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子。该问题要求高效地安排一系列争用某一公共资源的活动。贪心算法提供了一个简单、漂亮的方法使得尽可能多的活动能兼容地使用公共资源。     设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个
推荐
原创
2009-10-28 23:18:07
2992阅读
1评论
活动安排问题之二 活动安排问题之二 活动安排问题之二 活动安排问题之二 活动安排问题之二 活动安排问题之二 有若干个活动,第i个开始时间和结束时间是[Si,fi),活动之间不能交叠,要把活动都安排完,至少需要几个教室? 分析:能否按照之一问题的解法,每个教室安排尽可能多的活动,即按结束时间排序,再贪
转载
2017-08-29 14:13:00
391阅读
2评论
贪心算法原理:在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解。特性:贪心算法采用自顶向下,以迭代的方法做出相继的贪心选择,每做一次贪心选择就将所求问题简化为一个规模更小的子问题,通过每一步贪心选择,可得到问题的一个
转载
2023-08-17 16:24:26
36阅读
## 【贪心】活动安排 python
### 概述
贪心算法是一种简单而高效的算法思想,用于在每一步选择中都采取当前最优的选择,从而希望能够得到全局的最优解。在活动安排问题中,我们需要选择一组互不冲突的活动,使得能够安排尽可能多的活动。
### 流程图
```mermaid
flowchart TD
start((开始))
input{输入活动列表}
check{检查活
原创
2023-09-14 08:35:02
118阅读
题目描述设有n个活动的集合E={1,2,..,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能
原创
2023-02-18 00:30:54
66阅读
用贪心选择策略解会场安排问题。贪心算法重要的两个性质:贪心选择性质和最优子结构性质。1、 问题的贪心选择性质证明:首先将会场安排问题数学化,设有n个活动的集合 e= { 1 ,2 ,…,n },每个活动 i 都有一个要求使用该会场的起始时问si 和一个结束时问fi 。即k是所需