#include "stdafx.h"#include <iostream>using namespace std; void GreedySelector1(int n, int s[ ...
算法思想:贪心算法 实际问题:活动安排问题 编写语言:Java 问题描述 设有n个活动的集合 E , , ,n ,其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活动 i 都有一个要求使用该资源的起始时间 si 和一个结束时间 fi,且 si lt fi。如果选择了活动 i,则它在半开时间区间 si, fi 内占用资源。若区间 si, fi 与区间 sj ...
2019-05-24 22:10 0 1257 推荐指数:
#include "stdafx.h"#include <iostream>using namespace std; void GreedySelector1(int n, int s[ ...
问题描述: 给定11个活动的开始时间和结束时间,问怎么安排能使安排的活动数最多? 贪心策略: 优先安排最早结束的活动 【优先安排最早开始的活动问题在于,当该活动的持续时间过长时,不是最优解】 【优先安排持续时间最短的活动问题在于,该活动可能跨过两个活动的结束和开始时间,不是最优解 ...
一、贪心算法的基本思想 在求解过程中,依据某种贪心标准,从问题的初始状态出发,直接去求每一步的最优解,通过若干次的贪心选择,最终得出整个问题的最优解。 从贪心算法的定义可以看出,贪心算法不是从整体上考虑问题,它所做出的选择只是在某种意义上的局部最优解,而由问题自身的特性决定了该题运用 ...
问题描述: 设有n个活动的集合E={1,2,…,n},其中,每个活动都要求使用同一资源,而在同一时间内只有一个活动能使用这一资源。每个活动i都有一个要求使用该资源的起始时间si和一个结束时间fi,且si<fi。如果选择了活动i,则它在半开时间区间[si,fi)内占用资源。若区间[si,fi ...
一、实验内容及要求 1.要求按贪心算法原理求解问题; 2.要求手工输入s[10]及f[10],其中注意自己判断s[i]<f[i]; 3.要求显示所有活动及最优活动安排的i事件列表。二、实验步骤 1、手工输入活动事件; 2、输出活动s数组及f数组; 2、计算最优活动安排后,输出最优i事件列表 ...
一、贪心算法的特点 顾名思义,贪心算法总是做出在当前看来是最好的选择。虽然贪心算法并不从整体最优上加以考虑,它所做出的选择只是在某种意义上的局部最优选择。 贪心算法的优点是更简单,更直接且解题效率更高,即使贪心算法不能得到整体最优解,但其最终结果却是最优解的很好的近似解。 二、贪心算法 ...
【问题描述】 假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场。(这个问题实际上是著名的图着色问题。若将每一个活动作为图的一个顶点,不相容活动间用边相连。使相邻顶点有不同颜色的最小着色数,相应于要找的最小会场数。) 【数据输入】 由文件input.txt给出输入数据,第一行又一个 ...
问题描述:假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场。设计一个有效的贪心算法进行安排。(这个问题实际上是著名的图着色问题。若将每个活动作为图的一个顶点,不相容活动间用边相连。使用相邻顶点着有不同颜色的最小着色数,相应于要找的最小会场数)。 [之所以想记录这个问题,就在于括号 ...