数据结构课程设计背包问题

PAGE \* MERGEFORMAT 13

《数据结构》

课程设计报告

(背包问题的求解)

学 院:

班 级:

学 号:

姓 名:

指导教师:

目 录

1.需求分析 ………………….3

2.概要设计 ………………….5

3.详细设计 ………………….7

4.调试分析 ………………….10

5.用户使用说明 …………….10

6.测试结果 ………………….11

7.附录 ……………………….14

2008年12月20日

题目:背包问题的求解

一.需求分析

1、 程序的开始有个菜单栏目,可以选择程序来实现背包问题的求解。(注:程序中 1:表示回溯遍历的可行性 2:反之表示不可行路径)题目用到了两种方法来解决问题,分别是回溯法和递归法。

2、 程序会建立简单背包问题的基本模型,背包的建立是在键盘上直接输入背包能容纳的最大重量、物品的个数和每个物品的重量的值的方法。在输入数据的过程中,会提醒我们怎样输入数据,每一项数据输完后按Enter键进行下个数据项的输入。数据输入的结束会一直到简单背包问题模型的全部建立。

3、主要功能:根据(1)中的选项程序会执行数组的加乘运算,并且会以排列的形式分别输出符合要求的所有可能组合及相关物品的相关信息.C会处理一些不符合矩阵加法和乘法运算的错误。

4、栈与递归的实现:与汇编程序设计主程序和子程序之间的连接及信息交换相类似,在高级语言编制的程序中,调用函数和被调用函数之间的连接及信息交换需要通过站栈来进行。

5、数据测试

在键盘上依次输入数字:“15

7

3

4

5

6

7

8

9”

运行结果为:

背包能容纳的最大重量:15

物品个数:7

第1个物品重量:

3

第2个物品重量:

4

第3个物品重量:

5

第4个物品重量:

6

第5个物品重量:

7

第6个物品重量:

8

第7个物品重量:

9

Result 1

Item.4 Weight:6 Item.7 Weight:9

Result 2

Item.5 Weight:7 Item.6 Weight:8

Result 3

Item.1 Weight:3 Item.2 Weight:4 Item.6 Weight:8

Result 4

Item.1 Weight:3 Item.3 Weight:5 Item.5 Weight:7

Result 5

Item.2 Weight:4 Item.3 Weight:5 Item.4 Weight:6

Press any key to continue

如果输入不合法,编译系统将提示重新输入数据。

输入数字“10 5 5 6 7 8 9”

运行结果为:

运行结果为空值

上面的数据测试是用数组法测得的。

数据输入:15 7 3 4 5 6 7 8 9

这次采用的快速编辑模式,上面数据是对数组元素和最值的取舍。

运行结果:

背包能容纳的最大重量:15

物品个数:7

第1个物品重量:

3

第2个物品重量:

4

第3个物品重量:

5

第4个物品重量:

6

第5个物品重量:

7

第6个物品重量:

8

第7个物品重量:

9

Result 1

Item.4 Weight:6 Item.7 Weight:9

Result 2

Item.5 Weight:7 Item.6 Weight:8

Result 3

Item.1 Weight:3 Item.2 Weight:4 Item.6 Weight:8

Result 4

Item.1 Weight:3 Item.3 Weight:5 Item.5 Weight:7

Result 5

Item.2 Weight:4 Item.3 Weight:5 Item.4 Weight:6

Press any key to continue

背包能容纳的最大重量:

物品个数:

第1个物品重量:

第2个物品重量:

第3个物品重量:

第4个物品重量:

第5个物品重量:

递归法应用背包问题C语言课程设计,数据结构课程设计背包问题.doc相关推荐

  1. c语言小数表达式运算课程设计,数据结构课程设计表达式计算.doc

    数据结构课程设计表达式计算 福建农林大学计算机与信息学院 计算机类 课程设计报告 课程名称:算法与数据结构课程设计题目:表达式计算姓 名:系:数学系专 业:数学与应用数学年 级:学 号:指导教师:宁正 ...

  2. c语言实现一元多项式程序报告设计,数据结构课程设计报告一元多项式的计算..doc...

    数据结构课程设计报告一元多项式的计算. 题目:一元多项式的计算 --链表 摘要(题目) 一元多项式计算 任务:能够按照指数降序排列建立并输出多项式: 能够完成两个多项式的相加.相减,并将结果输入: 目 ...

  3. 停车场管理c语言课程设计,数据结构课程设计-停车场管理

    #include #include /** * 具体要求请看C语言数据结构课程设计 3.4.1:停车场管理系统 * 思路: * 进: * 1. 车按照顺序先进去通道(入队列) * 2. 给出指定,让先 ...

  4. c语言信息加密hikl,数据结构课程设计-家谱的实现与设计1.docx

    课程设计报告 课程设计名称: 数据结构课程设计 系: 三系 学生姓名: 班U级/ 13软件 学号: 20130311227 成绩: 指导教师: 刘杰 开课时间:2014.2015学年一学期 设计题目家 ...

  5. 最优线路c语言课程设计,数据结构课程设计(五)---行车路线

    1.任务简述: 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和小道.大道比较好走,每走1公里小明会增加1的疲劳度.小道不好走,如果连续走小道,小明的疲劳值会快速增加,连续 ...

  6. 数据结构背包问题c语言思路,【数据结构与算法】背包问题总结梳理

    背包问题总结分析 背包问题是个很经典的动态规划问题,本博客对背包问题及其常见变种的解法和思路进行总结分析 01背包 问题介绍 有 N 件物品和一个容量是 V 的背包.每件物品只能使用一次. 第 i 件 ...

  7. c语言数据结构课程设计电梯,数据结构课程设计报告(模拟电梯).doc

    数据结构课程设计报告(模拟电梯) 山东理工大学计算机学院 课 程 设 计 (数据结构) 班 级姓 名学 号 指导教师 二〇一二年一月十日 课程设计任务书及成绩评定 课题名称电 梯 模 拟 Ⅰ.题目的目 ...

  8. 小学生算术测试c语言报告,C语言课程设计报告-小学算术运算测试.doc

    C语言课程设计报告-小学算术运算测试 河南理工大学 课程设计报告 20013-2014学年第 一 学期 课程名称 数据结构课程设计 设计题目 <小学算术运算测试> 学生姓名 学 号 专业班 ...

  9. 数据结构c语言版课设,数据结构课程设计c语言版

    代码片段和文件信息 #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define NULL 0 #define INFEASI ...

  10. 数据结构课程设计 神秘国度的爱情故事

    数据结构 课程设计报告 广州大学 计算机科学与网络工程学院 计算机系 17级计科专业2班 2019年6月30日 广州大学学生实验报告 开课学院及实验室:计算机科学与工程实验室              ...

最新文章

  1. 跟我学雨林木风系统制作——2.涉及的技术及用到的工具介绍
  2. 室外越野组的传感器长度:40厘米,45厘米,50厘米
  3. 一个Win32 API实例类(代码收集)
  4. leetcode 334. Increasing Triplet Subsequence | 334. 递增的三元子序列(一种较trick的解法)
  5. 春节特惠活动┃一张纸一幅图,竟然提高了10倍的学习和工作效率!?
  6. visual怎么设置默认运行_神马?游戏和软件不能运行?来3DM一下吧!
  7. iOS之自定义pickerview(行驶里程数)
  8. 英语演讲计算机ppt模板,英语ppt演讲稿
  9. 组合导航(五):惯性导航参数建模
  10. from scipy.misc import comb ImportError: cannot import name ‘comb‘
  11. 记录nginx获取的真实ip多了 的问题
  12. python去除字符串中表情字符
  13. QIIME 2基因云,登10分JHM
  14. Mac:sh: /Users/lipan/Downloads/Django/node_modules/.bin/vue-cli-service: Permission denied
  15. 1335:【例2-4】连通块
  16. css中自适应样式(自媒体)
  17. 史上最全Python学习笔记(基于《Python学习手册(第4版)》)——Part3 语句和语法
  18. 幕课在线办公项目笔记——day1
  19. conda配置清华源
  20. javascript特效实现(4)——当前时间和倒计时效果

热门文章

  1. IDEA修改快捷键方法(在原快捷键不变的基础上增加自己习惯的快捷键)
  2. 谷歌将英文网站翻译成中文
  3. 移植MPlay到mini2440开发板
  4. Redis的读写分离
  5. 涩会:大学学历——办理居住证的具体流程(深圳)
  6. php微信实现线下收银扫码枪扫码支付微信支付
  7. 360Win10的360wifi无速度问题
  8. php清除手机浏览器缓存,js清除浏览器缓存的几种方法
  9. 以安全模式重启计算机,重启进入安全模式 重启电脑如何进入安全模式
  10. 如何正确重新启动计算机,电脑突然重启,详细教您电脑忽然重启如何解决