数据构造实验习题目与要求.pptVIP

  • 14
  • 0
  • 约1.05万字
  • 约 27页
  • 2019-01-12 发布于江苏
  • 举报
数据构造实验习题目与要求

西安交通大学计算机系 数据结构与算法实验 计算机软件所 2015.09 数据结构与算法实验 实验一 背包问题的求解 实验二 农夫过河问题的求解 实验三 简易电子表格的设计 实验四 八皇后问题 实验五 约瑟夫环问题仿真 实验六 教学计划编制问题(*) 实验七 二叉排序树与平衡二叉树的实现(*) 实验八 停车场模拟管理程序的设计与实现 实验九 学生成绩分析 实验十 一元稀疏多项式计算器 实验十一、哈夫曼压缩/解压缩算法(编译码器)(*) 实验十二、全国交通咨询模拟系统(*) 实验十三、迷宫问题(*) 数据结构与算法实验 注:从上述题目中任选3题目,打星号至少选1题,共3个实验! 成绩评定 题目完成情况的验收 基本题目 验收时间:上机时间完成当场验收 验收方式:本人简要介绍完成的情况,并检查程序运行结果 成绩评定:按照预先给定的各题分值进行成绩评定 选做题目 验收时间:上机时间完成当场验收,并给所指定的分数 验收方式:填写成绩评定考核表,本人简要介绍完成的情况,检查程序运行结果,提交专题实验报告 成绩评定:实验题目完成情况和报告完成情况,最后核定成绩 结果正确程序没有BUG并有独到之处成绩为所给题目分数的90-100% 结果正确程序没有BUG成绩为所给题目分数的75-90% 结果不完全正确成绩为所给题目分数的60-75% 结果不正确成绩为所给题目分数的60% 实验报告电子版发至: ymzhang@mail.xjtu.edu.cn 文件名:数据结构与算法专题实验实验报告_计算机XX班_学号_姓名 实验报告纸质版:专题实验课程结束时,各班收齐上交到 刘向东老师 或 赵仲孟老师 最终成绩 总成绩=实验题目得分 + 实验报告得分 实验一 背包问题的求解 1.问题描述 假设有一个能装入总体积为T的背包和n件体积分别为w1,w2,…wn的物品,能否从n件物品中挑选若干件恰好装满背包,即使w1+w2+…+wm=T,要求找出所有满足上述条件的解。 例如:当T=10,各件物品的体积{1,8,4,3,5,2}时,可找到下列4组解: (1,4,3,2) (1,4,5) (8,2) (3,5,2)。 2.实现提示 可利用回溯法的设计思想来解决背包问题。首先,将物品排成一列,然后,顺序选取物品装入背包,若已选取第i件物品后未满,则继续选取第i+1件,若该件物品“太大”不能装入,则弃之,继续选取下一件,直至背包装满为止。 如果在剩余的物品中找不到合适的物品以填满背包,则说明“刚刚”装入的物品“不合适”,应将它取出“弃之一边”,继续再从“它之后”的物品中选取,如此重复,直到求得满足条件的解,或者无解。 由于回溯求解的规则是“后进先出”,自然要用到“栈”。 进一步考虑:如果每件物品都有体积和价值,背包又有大小限制,求解背包中存放物品总价值最大的问题解---最优解或近似最优解。 实验二 农夫过河问题的求解 1.问题描述 一个农夫带着一只狼、一只羊和一棵白菜,身处河的南岸。他要把这些东西 全部运到北岸。他面前只有一条小船,船只能容下他和一件物品,另外只有农夫 才能撑船。如果农夫在场,则狼不能吃羊,羊不能吃白菜,否则狼会吃羊,羊会 吃白菜,所以农夫不能留下羊和白菜自己离开,也不能留下狼和羊自己离开,而 狼不吃白菜。请求出农夫将所有的东西运过河的方案。 2.实现提示 求解这个问题的简单方法是一步一步进行试探,每一步搜索所有可能的选择 ,对前一步合适的选择后再考虑下一步的各种方案。要模拟农夫过河问题,首先 需要对问题中的每个角色的位置进行描述。可用4位二进制数顺序分别表示农夫、 狼、白菜和羊的位置。用0表在南岸,1表示在北岸。例如,整数5 (0101)表示农 夫和白菜在南岸,而狼和羊在北岸。 现在问题变成:从初始的状态二进制0000(全部在河的南岸)出发,寻找一种 全部由安全状态构成的状态序列,它以二进制1111(全部到达河的北岸)为最终目 标。总状态共16种(0000到1111),(或者看成16个顶点的有向图)可采用广度优先或深度优先的搜索策略---得到从0000到1111的安全路径。 以广度优先为例:整数队列---逐层存放下一步可能的安全状态;Visited[16]数组标记该状态是否已访问过,若访问过,则记录前驱状态值---安全路径。 最终的过河方案应用汉字显示出每一步的两岸状态。 实验三 简易电子表格的设计 1.问题描述 设计一个支持基本计算统计功能和其它一些表格管理/处理功能的软件,使用 户可在该软件的支持下,用交互

文档评论(0)

1亿VIP精品文档

相关文档