数据结构课设.docx
- 文档编号:27661879
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:60
- 大小:372.18KB
数据结构课设.docx
《数据结构课设.docx》由会员分享,可在线阅读,更多相关《数据结构课设.docx(60页珍藏版)》请在冰豆网上搜索。
数据结构课设
沈阳工程学院
课程设计
设计题目:
校园导航、文章编辑
沈阳工程学院
课程设计任务书
课程设计题目:
校园导航
一、问题描述
当我们参观某校园时,就会遇到这样一个问题:
从当前所在位置出发去校园另外某个位置,要走什么样的路线最省时?
本课程设计实例再给出校园各主要建筑的名称信息及有路线连通的建筑之间的行进时间的基础上,利用校园导航系统计算出给定的起点到终点之间行进时间最短的行进路线。
二、课程设计主要内容及要求
1.从地图文件中读取校园主要建筑信息及建筑间行进时间的信息。
2.计算出给定的起点到终点之间行进时间最短的行进路线。
3.输出该路线(包含路过哪些建筑)及其总行进时间。
4.若输入错误,则给出提示信息。
三、对课程设计说明书撰写内容、格式、字数的要求
1.课程设计说明书是体现和总结课程设计成果的载体,主要内容包括:
设计题目、设计目的、设备器材、设计原理及内容、设计步骤、遇到的问题及解决方法、设计总结、设计小组评语、参考文献等。
一般不应少于3000字。
2.在适当位置配合相应的实验原理图、数据通路图、微程序流程图、实验接线图、微指令代码表等图表进行说明。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
3.设计总结部分主要写本人完成工作简介以及自己的设计体会,包括通过课程设计学到了什么,哪里遇到了困难,解决的办法以及今后的目标。
设计小组评语处注明设计组编号、设计组组长、设计组成员,并由设计组组长给出评语。
4.课程设计说明书手写或打印均可。
手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时采用A4纸,页边距均为20mm,正文采用宋体小四号字,行间距18磅。
文中大标题采用黑体小三号字,一级节标题采用黑体四号字,二级节标题采用黑体小四号字,表题与图题采用宋体五号字。
5.课程设计说明书装订顺序为:
封面、任务书、成绩评定表、目录、正文、参考文献。
四、设计完成后应提交成果的种类、数量、质量等方面的要求
1.完成“任务书”中指定的操作功能,运行稳定。
2.课程设计说明书。
五、时间进度安排
顺序
阶段日期
计划完成内容
备注
1
第1天
(12月27日)
阅读资料
2
第2—3天
(12月28日—12月30日)
系统分析设计
3
第4—8天
(12月31日—1月5日)
程序编制、调试及运行
4
第9天
(1月6日)
成绩评定
5
第10天
(1月7日)
撰写课程设计说明书
六、主要参考资料(文献)
[1]严蔚敏吴伟民.数据结构(C语言版).北京:
清华大学出版社.2007
[2]谭浩强.C程序设计.北京:
清华大学出版社.1999.12
[3]滕国文.数据结构课程设计.北京:
清华大学出版社.2010.09
[4]苏仕华等编著.数据结构课程设计.北京:
机械工业出版社.2005.05
[5]李春葆.数据结构(C语言版)习题与解析.北京:
清华大学出版社.2002..04
沈阳工程学院
课程设计
设计题目:
文章编辑
系别信息工程系班级计本091
学生姓名姚大州朱思坤学号2112
指导教师姜柳、吕海华职称副教授、讲师
起止日期:
2010年12月27日起——至2011年1月7日止
沈阳工程学院
课程设计任务书
课程设计题目:
文章编辑
系别信息工程系班级计本091
学生姓名姚大州朱思坤学号2112
指导教师姜柳、吕海华职称副教授、讲师
课程设计进行地点:
实训F座
任务下达时间:
2010年12月27日
起止日期:
2010年12月27日起——至2011年1月7日止
教研室主任张欣2010年12月27日批准
一、课程设计的原始资料及依据
在现今社会中,越来越多的人们意识到读书的益处,因此,涌现出大量的好文章。
这时,文章编辑工具便起到了很好的帮助作用。
根据数据结构的原理应用C语言制作文章编辑的程序需要统计文章中的所有文字信息,需要分行显示,处理起来虽然不是很复杂却设计到很多方面,需要使用链表来存储文章。
查阅有关程序设计的案例资料,进一步理解程序设计模块化的思想,并利用此思想,根据对程序设计学习编写一个简单的文章编辑系统。
二、课程设计主要内容及要求
1.分别统计出其中英文字母数和空格数及整篇文章总字数。
2.统计某一字符串在文章中出现的次数,并输出该次数。
3.删除某一子串,并将后面的字符前移,并输出删除后的文章。
4.输入数据的形式和范围:
可以输入大写、小写的英文字母、任何数字及标点符号。
三、对课程设计说明书撰写内容、格式、字数的要求
1.课程设计说明书是体现和总结课程设计成果的载体,主要内容包括:
设计题目、设计目的、设备器材、设计原理及内容、设计步骤、遇到的问题及解决方法、设计总结、设计小组评语、参考文献等。
一般不应少于3000字。
2.在适当位置配合相应的实验原理图、数据通路图、微程序流程图、实验接线图、微指令代码表等图表进行说明。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
3.设计总结部分主要写本人完成工作简介以及自己的设计体会,包括通过课程设计学到了什么,哪里遇到了困难,解决的办法以及今后的目标。
设计小组评语处注明设计组编号、设计组组长、设计组成员,并由设计组组长给出评语。
4.课程设计说明书手写或打印均可。
手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时采用A4纸,页边距均为20mm,正文采用宋体小四号字,行间距18磅。
文中大标题采用黑体小三号字,一级节标题采用黑体四号字,二级节标题采用黑体小四号字,表题与图题采用宋体五号字。
5.课程设计说明书装订顺序为:
封面、任务书、成绩评定表、目录、正文、参考文献。
四、设计完成后应提交成果的种类、数量、质量等方面的要求
1.完成“任务书”中指定的操作功能,运行稳定。
2.课程设计说明书。
五、时间进度安排
顺序
阶段日期
计划完成内容
备注
1
第1天
(12月27日)
阅读资料
2
第2—3天
(12月28日—12月30日)
系统分析设计
3
第4—8天
(12月31日—1月5日)
程序编制、调试及运行
4
第9天
(1月6日)
成绩评定
5
第10天
(1月7日)
撰写课程设计说明书
六、主要参考资料(文献)
[1]严蔚敏吴伟民.数据结构(C语言版).北京:
清华大学出版社.2007
[2]谭浩强.C程序设计.北京:
清华大学出版社.1999.12
[3]滕国文.数据结构课程设计.北京:
清华大学出版社.2010.09
[4]苏仕华等编著.数据结构课程设计.北京:
机械工业出版社.2005.05
[5]李春葆.数据结构(C语言版)习题与解析.北京:
清华大学出版社.2002..04
沈阳工程学院
程序设计基础课程设计成绩评定表
系(部):
信息工程系班级:
计本091学生姓名:
张小军
指导教师评审意见
评价内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.5
5
4
3
2
指导教师评审成绩
(加权分合计乘以8)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.3
5
4
3
2
评阅教师评审成绩
(加权分合计乘以4)
分
加权分合计
评阅教师签名:
年月日
答辩小组评审意见
评价内容
具体要求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
答辩小组评审成绩
(加权分合计乘以8)
分
加权分合计
答辩小组教师签名:
年月日
课程设计总评成绩
分
沈阳工程学院
程序设计基础课程设计成绩评定表
系(部):
信息工程系班级:
计本091学生姓名:
姜志兴
指导教师评审意见
评价内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.5
5
4
3
2
指导教师评审成绩
(加权分合计乘以8)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.3
5
4
3
2
评阅教师评审成绩
(加权分合计乘以4)
分
加权分合计
评阅教师签名:
年月日
答辩小组评审意见
评价内容
具体要求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
答辩小组评审成绩
(加权分合计乘以8)
分
加权分合计
答辩小组教师签名:
年月日
课程设计总评成绩
分
沈阳工程学院
程序设计基础课程设计成绩评定表
系(部):
信息工程系班级:
计本091学生姓名:
姚大州
指导教师评审意见
评价内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.5
5
4
3
2
指导教师评审成绩
(加权分合计乘以8)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.3
5
4
3
2
评阅教师评审成绩
(加权分合计乘以4)
分
加权分合计
评阅教师签名:
年月日
答辩小组评审意见
评价内容
具体要求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
答辩小组评审成绩
(加权分合计乘以8)
分
加权分合计
答辩小组教师签名:
年月日
课程设计总评成绩
分
沈阳工程学院
程序设计基础课程设计成绩评定表
系(部):
信息工程系班级:
计本091学生姓名:
朱思坤
指导教师评审意见
评价内容
具体要求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.5
5
4
3
2
指导教师评审成绩
(加权分合计乘以8)
分
加权分合计
指导教师签名:
年月日
评阅教师评审意见
评价内容
具体要求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。
0.3
5
4
3
2
评阅教师评审成绩
(加权分合计乘以4)
分
加权分合计
评阅教师签名:
年月日
答辩小组评审意见
评价内容
具体要求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
答辩小组评审成绩
(加权分合计乘以8)
分
加权分合计
答辩小组教师签名:
年月日
课程设计总评成绩
分
摘要
数据结构与算法在计算机学科中的地位十分重要,是设计系统程序和大型应用程序的重要基础。
数据结构和算法课程是计算机科学及其相关专业的一门核心课程,本课程的学习将为我们以后后续的操作系统、数据库、编译技术等专业基础课和专业课程的学习,以及软件设计水平的提高打下良好的基础。
本课程的学习过程是一个复杂程序设计的训练过程,我们所要编写的程序要结构清楚和正确易读,符合软件工程的规范。
我们进行课程设计的目的是要掌握设计程序的思路,学习会用计算机语言编写程序,以实现所需要处理的任务。
算法的实现是课程设计的灵魂,也就是我们学习设计的重中之重。
算法的设计靠的不是语法规则,而是解题的思路。
所以在开始设计前,我们要掌握好课本的基本内容,并且查阅一系列的课外资料,锻炼我们设计算法的思路。
本次数据结构课程设计校园导航这个题目,在存储方式上是运用了图的邻接矩阵存储结构,同时在编写程序中使用的基本操作有建立有向网、输入起点和终点、输出该路线(包含路过哪些建筑)及其总行进时间,在编写程序的过程中遇到了许多问题。
例如:
如何判断起点和终点之间没有路径,两结点相同时该如何处理等一系列问题,但经过讨论和改正,使程序达到预期的要求。
在文章编辑中,使用链表来存储文章。
利用模块化设计思想,主要实现的功能有:
统计某一字符串在文章中出现的次数,并输出该次数、删除某一子串,并将后面的字符前移,并输出删除后的文章。
经过讨论和修正以及老师耐心的指导使文章编辑系统不断完善。
最后,感谢老师在我们程序设计的过程中辛勤的指导和不倦的教诲。
关键词链表,有向网,邻接矩阵
第一章问题分析
1.1引言
数据结构的教学要求是:
学会分析研究计算机加工的数据结构的特征,以便为应用涉及的数据选择适当的逻辑结构、存储结构及其相应的算法,并初步掌握算法的时间分析和空间分析的技术。
另一方面,本课程的学习过程也是复杂程序设计的训练过程,要求学生编写的程序结构清楚和正确易读,符合软件工程的规范。
在学习中,先要学习程序设计课程的目的掌握设计程序的思路,学习会用计算机语言编写程序,以实现所需要处理的任务。
要正确处理算法与语法的关系,算法是程序的核心、是灵魂,语法是外壳、是工具。
不应把学习重点放在语法规则上,语法是重要的,不掌握语法规则就无法编写出正确的程序。
一定要把重点放在解题的思路上,通过思考,和大量的阅读,来构造一个完整的程序。
请记住:
重要的是学会编程,而不是背语法。
程序设计是为了锻炼我们的实际动手能力,在一定程度上,又增加了我们的各方面的知识,特别是一些联系实际的课程设计,它的完成需要自己平时积累的大量知识、并且需要勤于思考的能力和无限的激情。
本次课程设计主要是学习程序设计的方法,进行程序设计的基本训练,大多数的学生应该把精力放在最基本,最常用的内容上,学好基本功。
通过本次课程设计,相信我们一定能加强对数据结构这门课程的学习,尤其在动手实践上会有很大的进步。
1.2背景
随着全国各大高校不断地扩建以及建筑的增加,当我们参观某校园时,找到一条从当前位置到另外某个位置的路径是最省时的,并把该路径上都有哪些建筑输出的问题愈加凸显现出来。
所以设计一个校园导航系统是很实用和必要的。
在现今社会中,越来越多的人们意识到读书的益处,因此,涌现出大量的好文章。
而文章编辑人员需要随时了解文章文本的相关信息。
因此,编写一个文章编辑系统是有非常必要的,为相应编辑需求特开发此文章编辑系统。
文章编辑需要统计文章中的所有文字信息,需要分行显示,处理起来虽然不是很复杂却设计到很多方面,需要使用链表来存储文章。
1.3分析
1.3.1校园导航系统
校园导航系统运用的是有向网的邻接矩阵表示方法。
将校园景点作为图的结点,将景点间的路径作为图的边,路径行进时间作为边的权值。
这样一来,求两景点间行进最短时间的问题就抽象成了求图中一结点到另一结点的问题。
校园导航适合用有向网,方便校园景点的储存以及景点间路径行进时间的储存。
一个景点是一个顶点,如果两顶点间有路径则该边的权值为它们的行进时间否则为无穷大。
校园导航系统分为三个大部分,分别为建筑相关信息的读入,利用迪杰斯特拉算法求解给定顶点对之间最短行进时间的路径,输出所找到的最短行进时间的路径。
建筑相关信息的读入,当地图文件满足条件时,系统会从地图文件中读取建筑数目,建筑间的行进时间数据,建筑名称及有路径存在的建筑信息,形成图的邻接矩阵。
建筑间的行进时间的信息相当于顶点间边的权值,构造有向网络。
当两建筑间无直接路径时,用整型最大值代表正无穷大。
利用迪杰斯特拉算法求解给定顶点对之间最短行进时间,首先要对求解到的顶点集U和待求解的顶点集V-U及最短路径结构数组进行初始化,首先录入要然后在V-U顶点集中找到最短路径的顶点u降至并入顶点集U中,并从顶点集V-U中删除u,接下来依次调整到顶点V-U中每个顶点的当前最短路径值;直到V=U为止。
主函数,主函数是程序的入口,先对有向网络进行初始化,在调用迪杰斯特拉算法求解给定顶点对之间最短行进时间,并将结果保存到最短路径数组中。
找到路径上的各个顶点及顶点间的距离并输出。
1.3.2文章编辑系统
文章编辑系统运用的数据结构是线性表中的单链表。
单链表是多个数据元素的有限序列,至于每个数据元素的具体含义,在不同的情况下各不相同,他可以是一个数或是一个符号等等。
文章编辑适合用单链表,其方便随时进行对相应的字符进行查找统计和删除相应的字符,实现动态管理。
其中每一个节点当中包括两方面信息,分别为字符数据信息和此数据的后继结点信息。
该节点类型为结构体,结构体中的域表示字符的相应属性。
文章编辑系统分为三个大模块,分别为初步统计功能、统计字符串出现次数模块以及删除字符串模块。
在进行统计字符串出现次数模块和删除字符串模块是,文章编辑系统中会调用一些系统默认函数。
在函数的开始阶段,系统会执行创建链表函数。
在这个过程中,需要用户进行录入操作,即输入要统计的文章文本。
当完成录入工作后,文章编辑系统会继续调用输出文章文本函数对所输入的信息进行输出。
之后,此系统继续调用统计字母函数来统计所输入文本当中字母的个数;继续调用统计数字函数来统计所输入文本当中数字的个数;继续调用统计空格函数来统计所输入文本当中空格的个数;继续调用统计文本总字数函数来统计所输入文本当中所有字符的个数。
统计字符串出现次数功能,首先要输入要统计的字符串,然后判断要统计的字符串的第一个字符是否在文本当中出现。
若有出现,再比较后面字符串与文本当中的是否匹配,若匹配成功,使计数器加一。
以此类推,直到遍历完整个链表为止,并返回计数器的值。
这个值即为该字符串在此文本当中出现的个数。
删除字符串功能,首先要输入要删除的字符串,然后判断要删除的字符串的第一个字符是否在文本当中出现。
若有出现,再比较后面字符串与文本当中的是否匹配,若匹配成功,便通过对文章文本的地
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构