算法课实验报告3.1

  • 格式:doc
  • 大小:69.00 KB
  • 文档页数:2

下载文档原格式

  / 2
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告3.1

学号:201208070103 姓名:陈明班级:智能1201

第17 周

课程名称算法设计与分析实验课时 2

实验项目最优服务次序问题实验时间2015年1月17日

实验目的

设有n个顾客同时等待一项服务。顾客i需要的服务时间为t i,1≤i≤n。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是n恶搞顾客等待服务时间的总和除以n。

实验环境Eclipse Luna, Java JDK1.8, Windows 8.1

实验内容(算法、程序、步骤和方法)一、算法策略

求解最优服务次序问题的贪心策略为:先为所需服务时间最短的顾客服务。使用贪心算法求解最优服务次序问题的算法,用C++语言描述。

二、算法设计

对服务时间最短的顾客先服务的贪心选择策略。首先对需要服务时间最

T变成了需对n-1个顾客服务的新问题T n减小为n-1。基于此种T n-1顾客中选择服务时间最

假如顾客的所需要的服务时间分别为:1,2,3,4,5

那么等待时间是

第一位顾客:1

第二位顾客:1,2

第三位顾客:1,2,3

第四位顾客:1,2,3,4

第五位顾客:1,2,3,4,5

则总等待时间可写成:1*5+2*4+3*3+4*2+5*1

三、复杂度分析

程序主要是花费在对各顾客所需服务时间的排序和贪心算法即

重循环影响时

O(n)

O(nlogn)O(nlogn)。

数据记录和计算

结论(结果)

实验运行结果如上截图,测试的结果为,平均等待时间的最小值=6.0

小结

最短服务时间优先,先将服务时间排序,然后注意后面的等待服务时间既包括等待部分,也包括服务部分。

指导老师

评议

成绩评定:指导教师签名: