数据结构课程设计题目及要求(2013)
数据结构的课程设计

数据结构的课程设计一、课程目标知识目标:1. 理解数据结构的基本概念,掌握线性表、树、图等常见数据结构的特点与应用场景。
2. 学会分析不同数据结构的存储方式和操作方法,并能运用到实际问题的解决中。
3. 掌握排序和查找算法的基本原理,了解其时间复杂度和空间复杂度。
技能目标:1. 能够运用所学数据结构知识,解决实际问题,提高编程能力。
2. 能够运用排序和查找算法,优化程序性能,提高解决问题的效率。
3. 能够运用数据结构知识,分析并解决复杂问题,培养逻辑思维能力和创新意识。
情感态度价值观目标:1. 培养学生对数据结构学科的兴趣,激发学习热情,形成主动探索和积极进取的学习态度。
2. 增强学生的团队协作意识,培养合作解决问题的能力,提高沟通表达能力。
3. 培养学生的抽象思维能力,使其认识到数据结构在计算机科学中的重要性,激发对计算机科学的热爱。
本课程针对高中年级学生,结合学科特点和教学要求,注重理论与实践相结合,培养学生的编程能力和逻辑思维能力。
通过本课程的学习,使学生能够掌握数据结构的基本知识,提高解决实际问题的能力,同时培养良好的学习态度和价值观。
在教学过程中,将目标分解为具体的学习成果,以便进行后续的教学设计和评估。
二、教学内容1. 数据结构基本概念:介绍数据结构的概念、作用和分类,重点讲解线性结构(线性表、栈、队列)和非线性结构(树、图)的特点。
2. 线性表:讲解线性表的顺序存储和链式存储结构,以及相关操作(插入、删除、查找等)。
3. 栈和队列:介绍栈和队列的应用场景、存储结构及相关操作。
4. 树和二叉树:讲解树的定义、性质、存储结构,二叉树的遍历算法及线索二叉树。
5. 图:介绍图的定义、存储结构(邻接矩阵和邻接表)、图的遍历算法(深度优先搜索和广度优先搜索)。
6. 排序算法:讲解常见排序算法(冒泡排序、选择排序、插入排序、快速排序等)的原理、实现及性能分析。
7. 查找算法:介绍线性查找、二分查找等查找算法的原理及实现。
数据结构课程设计题目

数据结构课程设计题目一、题目背景在现代科技发展的背景下,数据结构作为计算机科学的重要基础课程,对于培养学生的编程思维、数据处理能力具有重要的作用。
本篇课程设计将围绕数据结构的实际应用,设计一个能够提升学生数据结构理论与实践能力的题目。
二、题目描述你需要设计一个软件,实现以下功能:能够记录学生信息并进行相关的数据操作。
具体要求如下:1. 学生信息包括:学生学号、姓名、性别、年龄、身高、体重等基本信息;2. 软件需要实现以下操作:a. 添加学生信息:可以手动添加每个学生的详细信息,并将其记录到数据库中;b. 删除学生信息:能够根据学号或姓名删除指定学生的信息;c. 修改学生信息:能够根据学号或姓名修改指定学生的信息;d. 查询学生信息:能够按照学号、姓名、性别、年龄等条件进行学生信息的查询,并将结果以列表形式展示;e. 统计学生信息:能够统计学生的平均年龄、平均身高、平均体重等统计数据,并展示在界面上;f. 数据导入导出:能够将学生信息导入/导出到文件或数据库中,实现数据的持久化存储。
三、设计思路为了实现上述功能,你可以采用以下的设计思路:1. 数据结构选择:可以使用链表、数组、树等数据结构存储学生信息,具体根据功能需求来选择合适的数据结构;2. 界面设计:考虑采用图形界面或者命令行界面,以提供方便的操作方式;3. 数据存储:可以使用文件、数据库等方式进行数据的存储和读取,以实现数据的持久化;4. 算法设计:在实现功能的过程中,需要考虑合适的算法来实现快速的查找、删除和修改等操作;5. 错误处理:在设计过程中,需要考虑各种可能的错误情况,并进行相应的处理和提示。
四、实施步骤为了顺利完成该课程设计,你可以按照以下步骤进行:1. 分析题目需求:仔细阅读以上题目描述,明确实现各项功能的具体要求;2. 设计数据结构:选择合适的数据结构来存储学生信息,考虑数据的增删改查等操作的效率;3. 设计算法:根据功能需求,设计相应的算法来实现各项操作;4. 实现界面:根据选择的界面方式,设计相应的图形界面或命令行交互界面;5. 实现功能:按照题目要求,逐个实现各项功能,并进行测试;6. 完善细节:对界面进行美化,完善用户交互体验,处理各种错误情况;7. 测试与调试:对整个软件进行全面的测试,并进行调试修复可能存在的问题;8. 编写报告:撰写课程设计报告,详细记录设计过程、实现方法、遇到的问题以及解决方案等。
(完整)数据结构面向对象课程设计MFC贪吃蛇

湖南工业大学课程设计任务书2012 -2013 学年第 2 学期计算机与通信学院(系、部)软件工程专业 1201 班级课程名称:面向对象课程设计设计题目: 贪吃蛇完成期限:自 2013 年 6 月 24 日至 2013 年 6 月 29 日共 1 周指导教师(签字):年月日系(教研室)主任(签字):年月日《面向对象程序设计课程设计》设计说明书基于windows界面应用程序贪吃蛇起止日期: 2013 年 6 月 24 日至 2013 年 6 月 28 日学生姓名汪骁将班级软件工程1201学号12408300126成绩指导教师(签字)计算机与通信学院2013 年 6 月 28 日目录第一章引言1。
1关于题目 (4)1.1。
1题目要求 (4)1.1.2选题背景 (4)1。
2关于编译软件 (4)1。
3关于兼容性 (4)第二章概要设计2。
1软件主要功能设计 (5)2。
1。
1程序结构 (5)2.1.2程序流程 (5)第三章软件实现3.1变量函数及资源的声明 (6)3。
1。
1函数声明 (6)3。
1.2变量声明 (6)3.1。
3资源 (7)3。
2主要功能的实现 (7)3。
2。
1游戏界面 (7)3。
2。
2初始化食物 (7)3。
2。
3开始游戏 (7)3。
2.4游戏设置...................................................... 8第四章解释4。
1个人所分任务详解 ................................................... 8第五章结果与讨论5。
1程序运行 (17)4。
1。
1部分函数与代码 (17)5.2实验总结 (19)第一章引言1.1关于题目1.1.1题目要求利用Microsoft Visual C++制作一个贪吃蛇的小游戏,要求:(1)应用MFC单文档制作(2)能够记录游戏成绩(3)可暂停/继续并在玩家不愿游戏时停止游戏(4)有背景音乐和音效1.1。
《数据结构》课程设计

《数据结构》课程设计一、课程目标《数据结构》课程旨在帮助学生掌握计算机科学中基础的数据组织、管理和处理方法,培养其运用数据结构解决实际问题的能力。
课程目标如下:1. 知识目标:(1)理解基本数据结构的概念、原理和应用,如线性表、栈、队列、树、图等;(2)掌握常见算法的设计和分析方法,如排序、查找、递归、贪心、分治等;(3)了解数据结构在实际应用中的使用,如操作系统、数据库、编译器等。
2. 技能目标:(1)能够运用所学数据结构解决实际问题,具备良好的编程实践能力;(2)掌握算法分析方法,能够评价算法优劣,进行算法优化;(3)能够运用数据结构进行问题建模,提高问题解决效率。
3. 情感态度价值观目标:(1)激发学生对计算机科学的兴趣,培养其探索精神和创新意识;(2)培养学生团队合作意识,学会与他人共同解决问题;(3)增强学生的责任感和使命感,使其认识到数据结构在信息技术发展中的重要性。
本课程针对高中年级学生,结合学科特点和教学要求,将目标分解为具体的学习成果,为后续教学设计和评估提供依据。
课程注重理论与实践相结合,旨在提高学生的知识水平、技能素养和情感态度价值观。
二、教学内容《数据结构》教学内容依据课程目标进行选择和组织,确保科学性和系统性。
主要包括以下部分:1. 线性表:- 线性表的定义、特点和基本操作;- 顺序存储结构、链式存储结构及其应用;- 线性表的相关算法,如插入、删除、查找等。
2. 栈和队列:- 栈和队列的定义、特点及基本操作;- 栈和队列的存储结构及其应用;- 栈和队列相关算法,如进制转换、括号匹配等。
3. 树和二叉树:- 树的定义、基本术语和性质;- 二叉树的定义、性质、存储结构及遍历算法;- 线索二叉树、哈夫曼树及其应用。
4. 图:- 图的定义、基本术语和存储结构;- 图的遍历算法,如深度优先搜索、广度优先搜索;- 最短路径、最小生成树等算法。
5. 排序和查找:- 常见排序算法,如冒泡、选择、插入、快速等;- 常见查找算法,如顺序、二分、哈希等。
数据结构课程设计(附代码)-数据结构设计

上海应用技术学院课程设计报告课程名称《数据结构课程设计》设计题目猴子选大王;建立二叉树;各种排序;有序表的合并;成绩管理系统;院系计算机科学与信息工程专业计算机科学与技术班级姓名学号指导教师日期一.目的与要求1. 巩固和加深对常见数据结构的理解和掌握2. 掌握基于数据结构进行算法设计的基本方法3. 掌握用高级语言实现算法的基本技能4. 掌握书写程序设计说明文档的能力5. 提高运用数据结构知识及高级语言解决非数值实际问题的能力表。
3、输出功能:void print(LinkList *head);通过一个while的循环控制语句,在指针p!=NULL时,完成全部学生记录的显示。
知道不满足循环语句,程序再次回到菜单选择功能界面。
4、删除功能:LinkList *Delete(LinkList *head);按想要删除的学生的学号首先进行查找,通过指针所指向结点的下移来完成,如果找到该记录,则完成前后结点的连接,同时对以查找到的结点进行空间的释放,最后完成对某个学生记录进行删除,并重新存储。
5、插入功能:LinkList *Insert(LinkList *head);输入你想插入的位置,通过指针所指向结点的下移,找到该位置,将该新的学生记录插入到该结点,并对该结点后面的指针下移。
链表长度加一,重新存储。
(5) 程序的输入与输出描述输入:调用LinkList *create()函数,输入学生的姓名、学号、三门功课的成绩;输出:调用void print(LinkList *head)函数,输出学生的记录。
(6) 程序测试主菜单:成绩管理系统的主界面:学生成绩记录的输入:输出学生成绩记录:学生成绩记录的删除(删除学号是1101的学生记录)插入新的学生成绩记录(插入学号为1103的学生记录)(7) 尚未解决的问题或改进方向尚未解决的问题:该成绩管理系统还存在不少缺陷,而且它提供的功能也是有限的,只能实现学生成绩的输入、输出、删除、插入。
13级课程设计题目及要求

13级数据结构课程设计题目及要求一、课程设计目的《数据结构》是计算机专业一门重要的专业技术基础课程,是一门关键性核心课程。
《数据结构》课程的目标是使学生学会分析研究计算机加工对象的特性,选择合适的数据结构和存储表示,以及编制相应的实现算法,培养和提高学生程序设计的能力。
《数据结构》课程也是一门实践性较强的课程,设置实践环节是十分重要的。
本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及编写大型程序的能力,并培养基本的、良好的程序设计技能以及合作能力。
二、课程设计内容题目一:宿舍管理系统(线性表应用)【问题描述】(1) 任务:为宿舍管理人员编写一个宿舍管理查询软件,程序设计要求:A. 采用交互工作方式B. 建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序 (冒泡、选择、插入排序等任选一种)【实现提示】(2)查询功能A. 按姓名查询B. 按学号查询C. 按房号查询(3)打印功能(4)添加功能(5)删除功能(6)修改功能题目二:通讯录管理系统(线性表应用)【问题描述】模块要求:第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。
第二个模块——Menu()的功能是:显示英文提示选单。
第三个模块——Quit()的功能是:退出选单。
第四个模块——Create()的功能是:创建新的通讯录。
第五个模块——Add()的功能是:在通讯录的末尾,写入新的信息,并返回选单。
第六个模块——Find()的功能是:查询某人的信息,如果找到了,则显示该人的信息,如果未找到,则提示通讯录中没有此人的信息,并返回选单。
第七个模块——Alter()的功能是:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。
第八个模块——Delete()的功能是:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。
第九个模块——List()的功能是:显示通讯录中的所有记录。
数据结构课程设计--按层次遍历二叉树

数据结构课程设计--按层次遍历二叉树学号:题目按层次遍历二叉树学院计算机科学与技术专业计算机科学与技术班级姓名指导教师2013 年 6 月 20 日11 问题描述及要求 (4)1.1问题描述 (4)1.2任务要求 ............................................................. 4 2 开发平台及所使用软件 ....................................................... 4 3 程序设计思路 (5)3.1 二叉树存储结构设计 (5)3.2 题目算法设计 (5)3.2.1 建立二叉树 (5)3.2.2 遍历二叉树 (5)3.3.3 按要求格式输出已建立的二叉树 (6)3.3 测试程序 ............................................................ 6 4 调试报告...................................................................6 5 经验和体会 ................................................................. 6 6源程序清单及运行结果 (7)6.1源程序清单 (7)6.2 运行结果 ............................................................. 9 7 参考文献..................................................................10 本科生课程设计成绩评定表 (11)2课程设计任务书学生姓名: 专业班级: 计科ZY1102班指导教师: 工作单位: 计算机科学系题目: 按层次遍历二叉树初始条件:编写按层次顺序(同一层自左至右)遍历二叉树的算法。
《数据结构》课程设计报告迷宫求解

课程设计任务书题目:迷宫设计学号:姓名:专业:网络技术课程:数据结构指导教师:职称:讲师完成时间:2013年12 月----2014 年1 月年月日课程设计任务书及成绩评定目录一.迷宫求解································(1)问题描述···········································(2)需求分析及设计思路·································(3)数据结构定义········································(4)系统功能模块介绍····································(5)源代码··············································(6)运行结果及调试分析································(7)课程设计总结·····························一.迷宫求解(1)问题描述输入一个任意大小的迷宫数据,用递归和非递归两种方法求出一条走出迷宫的路径,并将路径输出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构》课程设计目录一、课程设计要求 (2)1.分组设计 (2)2.题目选择 (2)3.考核标准 (2)4.提交材料 (2)5.考核等级 (2)6.时间安排 (2)二、课程设计报告的书写内容(仅供参考) (3)三、课程设计题目: (3)(一)课程设计1 (3)1. joseph环 (3)2. 文章编辑 (3)3. 学生搭配问题 (4)4. 一元稀疏多项式计算器 (4)5. 表达式求值 (4)(二)课程设计2 (5)1. 集合基本运算 (5)2. 运动会分数统计 (5)3. 内部排序算法比较 (6)4. 宿舍管理查询软件 (6)(三)课程设计3 (7)1. 校园导游咨询 (7)2. 哈夫曼编/译码器 (7)3. 散列法的实验研究 (8)4. 建立通信网络 (8)附件1:封面格式 (9)附件2:分组登记表 (10)一、课程设计要求1.分组设计按小组方式进行组织设计,小组成员为4~5人,班级内自由组合,并确定小组组长,分组名单汇总到各班班长,最后交给老师。
2.题目选择每个小组至少选择3个题目,其中:在课程设计1中任选1道题,在课程设计2选1道题,在课程设计3中选1道题。
3.考核标准总的要求:组内每位同学,一起协商承担的任务,每人都要参与设计和编程工作,不能只负责撰写论文。
评分组成:1)组长对组内成员学习态度和承担设计任务的评价;2)课程设计完成的效果,必要时会采用现场演示和答辩的方式;3)课程设计报告的撰写质量;4.提交材料每位同学依据所在小组选择的课程设计题,独立撰写课程设计报告,分题目依次撰写。
不允许相互间抄袭,否则均以零分计算。
备注:如果是合作完成一个题目的,除了选择的数据结构一样以为,算法部分每个人只写自己完成的那部分,绝对不允许交上来的论文一模一样!。
提交材料:纸质的课程设计报告,程序代码:(建议按如下形式打包)备注:以组为单位打包提交。
5.考核等级评分标准:等级制(优秀、良好、中等、及格、不及格)6.时间安排1) 布置设计任务:11月13号,发到公共邮箱pspublicmail@,密码:ggyx20132) 提交分组名单:布置设计任务后一周内,班长汇总后将分组结果及分组任务表交给老师;3)设计与撰写:上机时间为课内的上机时间和课外自己找时间完成。
4)提交截止日期:第16周周三二、课程设计报告的书写内容(仅供参考)1、题目的内容及要求2、需求分析3、概要设计(包括选择什么数据结构?数据结构采用哪种存储方式?选择的原因?设计哪些操作?这些操作之间的调用关系等等)4、详细设计(包括数据结构的类型定义,每个操作的算法描述)5、源代码6、运行结果及分析7、收获及体会三、课程设计题目:(一)课程设计11.joseph环【问题描述】编号是1,2,……,n的n个人按照顺时针方向围坐一圈,每个人只有一个密码(正整数)。
一开始任选一个正整数作为报数上限值m,从第一个仍开始顺时针方向自1开始顺序报数,报到m时停止报数。
报m的人出列,将他的密码作为新的m值,从他在顺时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。
设计一个程序来求出出列顺序。
【要求】利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个人的编号。
【测试数据】m的初值为20,n=7 ,7个人的密码依次为3,1,7,2,4,7,4,首先m=6,(正确的出列顺序应为6,1,4,7,2,3,5)。
【实现提示】程序运行后,首先要求用户指定初始报数上限值,然后读取各人的密码。
可设n≤30。
此题所用的循环链表中不需要“头结点”,请注意空表和非空表的界限。
2.文章编辑【问题描述】输入一页文字,程序可以统计出文字、数字、空格的个数。
静态存储一页文章,每行最多不超过80个字符,共N行。
【要求】(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。
【存储结构】使用线性表,分别用几个子函数实现相应的功能;【输入数据的形式和范围】可以输入大写、小写的英文字母、任何数字及标点符号。
【输出形式】(1)分行输出用户输入的各行字符;(2)分4行输出"全部字母数"、"数字个数"、"空格个数"、"文章总字数"(3)输出删除某一字符串后的文章。
3.学生搭配问题【问题描述】一班有m个女生,有n个男生(m不等于n),现要开一个舞会。
男女生分别编号坐在舞池的两边的椅子上,每曲开始时,依次从男生和女生中各出一人配对跳舞,本曲没成功配对者坐着等待下一曲找舞伴。
请设计一系统模拟动态地显示出上述过程。
【基本要求】(1)输出每曲配对情况(2)计算出任何一个男生(编号为X)和任意女生(编号为Y),在第K曲配对跳舞的情况。
至少求出K的两个值。
【提示】用队列来解决比较方便.4.一元稀疏多项式计算器【问题描述】设计一个一元稀疏多项式简单计算器。
【基本要求】一元多项式简单计算器的基本功能是:(1)输入并建立多项式;(2)输出多项式,输出形式为整数序列n,c1,e1,c2,e2,…,cn,en,其中n是多项式的项数,ci和ei分别是第i项的系数和指数,序列指指数降序排列;(3)多项式a和b相加,建立多项式a+b;(4)多项式a和b相减,建立多项式a-b。
【实现提示】用带头结点的单链表存储多项式,多项式的项数存在头结点。
5.表达式求值【问题描述】表达式求值是实现程序设计语言的基本问题之一,也是栈的应用的一个典型例子。
设计一个程序,演示用算符优先法对算术表达式求值的过程。
【基本要求】以字符序列的形式从终端上输入语法正确的、不含变量的整数表达式。
利用教材中给出的算符优先关系,实现对算术四则混合运算表达式的求值,并仿照教材例3-1演示在求值中运算符栈、运算数栈、输入字符和主要操作的变化过程。
【实现提示】(1)设置运算栈和运算数栈辅助分析算符优先关系。
(2)在输入表达式的字符序列的同时,完成运算符和运算数(整数)的识别处理,以及相应的运算。
(3)在识别出运算数的同时,要将其字符序列形式转换成整数形式。
(二)课程设计21.集合基本运算【问题描述】编制一个能演示执行集合的并、交和差运算的程序。
允许采用顺序存储或链式存储来实现。
【基本要求】(1)集合的元素限定为小写字符[‘a’. .’z’]。
(2)演示程序以用户和计算机的对话方式执行。
【测试数据】(1)Set1=”magazine”,Set2=”paper”.Set1∪Set2=”aegimnprz”,Set1∩Set2=”ae”,Set1-Set2=”gimnz”.(2) Set1=”012oper4a6tion89”,Set2=”error data”,Set1∪Set2=”adeinoprt”, Set1∩Set2=”aeort”, Set1-Set2=”inp”.【实现提示】以有序链表表示集合。
2.运动会分数统计【问题描述】参加运动会有n个学校,学校编号为1~n。
比赛分成m个男子项目和w个女子项目。
项目编号为男子1~m和女子m+1~m+w。
不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。
(m<=20,n<=20)【功能要求】(1)可以输入各个项目的前三名或前五名的成绩;(2)能统计各学校总分,(3)可以按学校编号、学校总分、男女团体总分排序输出;(4)可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。
【规定】输入数据形式和范围:20以内的整数(如果做得更好可以输入学校的名称,运动项目的名称)【输出形式】有中文提示,各学校分数为整形【界面要求】有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。
【存储结构】学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。
(数据文件的数据读写方法等相关内容在c语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构;【测试数据】要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。
进行程序测试,以保证程序的稳定。
测试数据及测试结果请在上交的资料中写明。
3.内部排序算法比较【问题描述】在教科书中,各种内部排序算法的时间复杂度分析结果只给出了算法执行时间的阶,或大概执行时间。
试通过随机数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。
【基本要求】(1)对以下6种常用的内部排序算法进行比较:起泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、堆排序。
(2)待排序表的表长不小于100;其中的数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换计为3次移动)。
(3)最后要对结果作出简单分析,包括对各组数据得出结果波动大小的解释。
【测试数据】由随机数产生器生产。
【实现提示】主要工作是设法在已知算法中的适当位置插入对关键字的比较次数和异动次数的计数操作。
程序还可以考虑几组数据的典型性,如正序、逆序和不同程度的乱序。
4.宿舍管理查询软件【问题描述】为宿舍管理人员编写一个宿舍管理查询软件。
【基本要求】(1)采用交互工作方式;(2)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)。
(3)建立查询菜单: (用二分查找实现以下操作)按姓名查询按学号查询按房号查询打印任一查询结果(可以连续操作)(三)课程设计31.校园导游咨询【问题描述】设计一个校园导游程序,为来访的客人提供各种信息查询服务。
【基本要求】(1)设计你的学校的校园平面图,所含景点不少于10个。
以图中顶点表示学校各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。
(2)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
(3)为来访客人提供图中任意景点相关信息的查询。
【测试数据】由读者根据实际情况指定。
【实现提示】一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。
顶点和边均含有相关信息。
2.哈夫曼编/译码器【问题描述】用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。
但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。
对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。
试为这样的信息收发站写一个哈夫曼码的编/译码系统。
【基本要求】一个完整的系统应具有以下功能:(1)I:初始化(Initialization)。