欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    课程设计--贪心算法

    • 资源ID:1401757       资源大小:224.50KB        全文页数:10页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    课程设计--贪心算法

    1、 数 据 结 构 课 程 设 计数 据 结 构 课 程 设 计 贪心算法贪心算法 专业专业 软件工程软件工程 班级班级 B 软件软件 121 学号学号 学生姓名学生姓名 数据结构课程设计贪心算法:任务调度问题 目目 录录 1 设计题目 . 1 2 设计分析 . 1 3 设计实现 . 4 4 测试方法 . 7 4.1 测试目的 7 4.2 测试输入 . 7 4.3 正确输出 . 7 4.4 实际输出 . 7 5 分析与探讨 . 8 5.1 测试结果分析 . 8 5.2 探讨与改进 . 8 6 设计小结 . 8 数据结构课程设计贪心算法:任务调度问题 1 1 设计题目 有n项任务,要求按顺序执行,

    2、并设定第i项任务需要ti单位时间。如果任务 完成的顺序为1,2,n,那么第i项任务完成的时间为ci=t1+ti,平 均完成时间(Average Completion Time,ACT)即为(c1+cn)/n。本题要 求找到最小的任务平均时间。 输入要求: 输入数据中包含几个测试案例。每一个案例的第一行给出一个不大于2000000 的整数n,接着下面一行开始列出n个非负整数t(t=0;) /*当 n小于 0 的时候,退出程序*/ scanf(“%ld”, if(n0) 建立一个具有 n个元素的数组; for(i=0;i1),把数组的全部元素分成d1个组。所有距离为 d1的倍数的记录放在同一个组中

    3、。先在各组内进行直接插入排序;然后,取第二个 增量d21; increment0; increment=1 ) /*每次的步长都是通过n值右移位来得到的*/ for(i = increment; i =increment; j-= increment) if( temp = 0 ; ) double r100; /*用来存放每个测试案例的计算结果*/ j=0; /*记录测试案例的个数*/ for(对每一个测试案例) 把计算得到的最优调度时间放入 rj中; j+; /*当输入的 n值为负数时。跳出上面的 for 循环*/ for(从 0 到 j) if(ri=-1)printf(“n“);/*输

    4、出一个空行*/ else printf( “%.2fn“, ri );/*输出的结果要求精确到0.01*/ 数据结构课程设计贪心算法:任务调度问题 5 scanf( “%ld“, if(n 2000000) printf(“too much for the project!n“); exit(0); if( n 0 ) b = (long*)malloc( n * sizeof( long ) ); a = b; for(i=0; i 1000000000) printf(“too much for the project!n“); exit(0); /* 对输入中出现任务时间为负数的异常处理

    5、 */ if(*(b+i) 0 ; i-,a+ ) rj+= (double)*a/(double)n * i; j+; free( b ); 数据结构课程设计贪心算法:任务调度问题 6 /* 当n为0时,标志相应的r数组值为1,输出时碰到1则输出一 个空行*/ else if ( n = 0 ) rj+=-1; for(i=0;i1; increment0; increment=1 ) for(i = increment; i =increment; j-= increment) if( temp *(a + (j-increment) ) *(a+j)= *( a+ (j-incremen

    6、t) ); else break; 数据结构课程设计贪心算法:任务调度问题 7 *(a+j) = temp; 4 测试方法 4.1 测试目的 检验程序是否正常运行并完成算法的要求。 4.2 测试输入 4 4 1 2 3 5 2 3 4 1 5 -1 4.3 正确输出 5.00 7.00 4.4 实际输出 数据结构课程设计贪心算法:任务调度问题 8 5 分析与探讨 5.1 测试结果分析 调试与运行过程中,程序可以正常运行,并在输入不同数据情况下分别给出正 确的结果,说明该程序正确无误,完成了此次课程设计题目的要求。 5.2 探讨与改进 总的来说,该程序已基本实现了贪心算法的要求功能,但还可以对其中的一些 细节进行优化,比如程序的运行结果界面可以加上更多的文字描述与提示,增加观 赏性,也可以用起来更方


    注意事项

    本文(课程设计--贪心算法)为本站会员(毕***)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583