资源简介

多机调度问题的贪心算法实现。示例代码,可直接在VC上运行。

资源截图

代码片段和文件信息

#include 

void sort(char *str int *num int N);    //将所有作业按作业时间从大到小排序
int get_index(int *time int M);          //找到当前最空闲的机器
int main()
{
int N = 7;   //作业数量
int M = 3;   //机器数量
char job[] = {‘A‘ ‘B‘ ‘C‘ ‘D‘ ‘E‘ ‘F‘ ‘G‘};   //定义7个作业
int job_time[] = {11 7 8 12 15 20 18};        //每个作业的时间
int machine[] = {‘M1‘ ‘M2‘ ‘M3‘};     //定义3台机器
int machine_time[3] = {0 0 0};                    //当前机器上所有作业时间

int maxtime = 0;    //最长作业时间

//如果作业数量小于等于机器数量,则所需时间为最长作业的时间
int i =0;
int j=0;
int index=0;
if(N <= M)
{
for(i=0; i if(maxtime < job_time[i])
maxtime = job_time[i];
}
//否则,将所有作业按作业时间从大到小排序,
else
{
sort(job job_time N);   //排序
//for(i=0; i // printf(“%c %d\n“ job[i] job_time[i]);

for(j=0; j

评论

共有 条评论