您现在的位置:网站首页答辩论文计算机毕业设计计算机论文

课程设计 C语言背包问题的模拟

  • 简介:  课程设计 C语言背包问题的模拟,共5页,1950字。
    类型:word   
    • 请与管理员联系购买资料 QQ:5739126
  • 论文简介
  • 相关论文
  • 论文下载
  课程设计 C语言背包问题的模拟,共5页,1950字。
   一、题目分析
   本课设是一个对实际问题的研究,背包的总质量一定,n件物品的质量也是一定的,通过用栈的回塑来用不同质量物品装满整个背包。先将n件物品一一装进背包中,每装一件,用所装入物品的总质量与背包的最大质量进行比较,当所装入的物品总质量小于背包的的 最大质量时,继续此程序。当装入背包的物品总质量大于背包的总质量时,从背包取出一个物品,并继续反复往背包中装入物体过程。如此往复,直到所装物体总质量等于背包的重量为止。此时输出所有可能情况。若不能装满此背包,则输出此问题无解。
   二、设计过程
   1:设计过程
   对于本课设算法的设计方法,可以考虑用试探法进行——将这些物品按序号由小到大的次序放入包中,并对放置的不同情况做出不同的处理。具体地说,就是假设当前正在试探第K个物品W[k]的放置情况,则可能有以下三种情况;
   (1) 放置后正好满足条件,则将其放入背包中,并输出。
   (2) 放置后,背包中总重量小于背包的最大容量Max Weight,需继续放置;假设其后面还有,即K﹤Number,则从其后面物品选取一些,使其满足条件。即从W[k+1]~W[Number]中选择若干物品放入背包,使背包的物品质量之和为Max-weight而这可以通过递归调用来实现,所不同的是要选择的是总质量。
   ......
查看评论 已有0位网友发表了看法
  • 验证码: