- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
作业调度贪心算法讲述
软件算法设计
实验报告
题目:作业调度问题
院(系): 计算机科学与工程
专 业:
班 级:
学 生:
学 号:
2015年 11 月
问题描述:
n个作业{1,2,…,n}要在由n台机器M1,...,Mn完成加工作业调度问题,要求确定这n个作业的最优加工顺序,使得从第一个作业在机器,到最后一个作业在机器上加工完成所需的时间最少。
算法设计:
贪心算法思想:
贪心选择性质:
所谓贪心选择性质是指应用同一规则f,将原问题变为一个相似的。但规模更小的子问题,而后的每一步都是当前看似最佳的选择。这种选择依赖于已做出的选择,但不依赖于未作出的选择。从全局来看,运用贪心策略解决的问题在程序中无回溯过程。
局部最优解:
我们通过特点2向大家介绍了贪心策略的数学描述。由于运用贪心策略解题在每一步都取得了最优解,但能够保证局部最优解的不一定是贪心算法。
设7个独立作业{1,2,3,4,5,6,7}由3台机器M1,M2和M3加工处理。各作业所需的处理时间分别为{2,14,4,16,6,5,3}。按算法greedy产生的作业调度如下图所示,所需的加工时间为17。
序号1234567时间214416653
序号4256371时间161465432假设有三台机器,建立最小堆
程序中标识符说明
类别名称作用类Fac4_7_1?类MinHeap最小堆类用于优先队列类jobNode 定义作业结点(序号及加工时间)类MachineNode定义机器结点(机器号和可用时间)方法mergesort按处理作业加工时间降序排序方法greedy贪心法解多机调度问题数组a[]按作业顺序填写加工时间
算法实现:
运行环境:
Myeclipse 8.5 java project
2.源代码:
//基于最小堆的贪心算法解多机调度问题,
//heapsort on minheap
import java.io.*;
class MinHeap
{ //Min-heap impmentation
static jobNode[] Heap; //Pointer to the heap array
static int size; //Maximum size of the heap
static int n; //Number of intents now in heapheapsoet
public MinHeap(jobNode[] h,int num,int max)//constructor
{ Heap=h;n=num;size=max;buildheap();}
public int heapsize()//return current size of the heap
{ return n;}
public static boolean isLeaf(int pos)//true if pos is a leaf position
{ return(pos=n/2)(posn);}
public static void Assert_notFalse(boolean p,String q)
{if(!p)System.out.println((String)q);}
public static int key( int [] q,int p)
{ return q[p];}
//return position for left child of pos
public static int leftchild(int pos)
{ Assert_notFalse(posn/2,position has no left child);
return 2*pos+1;
}
//return position for right child of pos
public static int rightchild(int pos)
{Assert_notFalse(pos(n-1)/2,position has
您可能关注的文档
- 何人可(工业设计史)章节重点笔记(精华8页)讲述.doc
- 第一章 抗原综述.ppt
- 第一章 教育基础知识和基本原理综述.ppt
- 低面背景微粒体风格模板(紫黑)讲述.pptx
- 第一章 房地产法概综述.ppt
- 余凯高速YT3合同段预制T梁蒸汽养生讲述.doc
- 第一章 数据库系统概述综述.ppt
- 第一章 晶体光学基础综述.ppt
- 体验课第二天---真正的风度讲述.pptx
- 低温气瓶技术文件讲述.doc
- 2-红河州建筑施工安全生产标准化工地复核评分表(2022年修改版).docx
- 6.锡通项目2018年下半年工作会汇报材料(2018.7.9).docx
- 2018道路工程知识点汇总(新版).docx
- 附件3:月度生产例会安全汇报资料-站台门项目部.docx
- 附件2:广东建工集团2018年度科技成果汇总表.DOC
- 马武停车区、三汇停车区停车位管理系统,0#台账缺量.doc
- 攀成钢委办发〔2015〕19号(党风廉政建设责任考核与追究办法).doc
- 1-红河州建筑工程质量管理标准化复核评分表(2022年修改版).docx
- 中交第三公路工程局第四工程分公司项目经济合同结算管理办法(修订).doc
- 厂站安全操作规程汇编.doc
文档评论(0)