数据结构课程设计

发布 2022-10-01 21:32:28 阅读 8336

《数据结构与算法》

课程设计报告。

学号: 20101000254

班级序号: 113101-01

姓名: 张修远。

指导老师: 吴亮、陈占龙

中国地质大学(武汉)

信息工程学院遥感科学技术系。

2024年01月。

目录。题目一 - 4 -

需求规格说明】 -4 -

总体分析与设计】 -5 -

1)设计思想: -5 -

2)设计表示: -5 -

3)详细设计表示: -5 -

编码】 -6 -

小结】 -6 -

附录】 -6 -

题目二 - 7 -

需求规格说明】 -7 -

总体分析与设计】 -8 -

1)设计思想: -8 -

2)设计表示: -8 -

3)详细设计表示: -8 -

编码】 -9 -

小结】 -9 -

附录】 -9 -

题目三 - 12 -

需求规格说明】 -12 -

总体分析与设计】 -12 -

1)设计思想: -12 -

2)设计表示: -13 -

3)详细设计表示: -13 -

编码】 -13 -

小结】 -14 -

附录】 -14 -

题目四 - 16 -

需求规格说明】 -16 -

总体分析与设计】 -16 -

1)设计思想: -16 -

2)设计表示: -17 -

3)详细设计表示: -17 -

编码】 -17 -

小结】 -18 -

附录】 -18 -

题目五 - 19 -

需求规格说明】 -19 -

总体分析与设计】 -19 -

1)设计思想: -19 -

2)设计表示: -20 -

3)详细设计表示: -20 -

编码】 -20 -

小结】 -21 -

附录】 -21 -

题目六 - 22 -

需求规格说明】 -22 -

总体分析与设计】 -23 -

1)设计思想: -23 -

2)设计表示: -23 -

3)详细设计表示: -23 -

编码】 -24 -

小结】 -24 -

附录】 -24 -

总结 - 26 -

停车场管理:设停车场是一个可停放 n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满 n辆汽车,则后来的汽车只能在门外的便道上等。

候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。

利用数据结构实现输入命令和时间后系统自动记录操作内容而且自动计算停车场缴费情况。

使用两个栈一个队列来实现该停车场管理系统。

将停车场作为一个栈,实现先进后出的数据结构,但是,不难发现这种设计有非常大的不利之处,因为若中间有辆车想要出栈,则在他之后进入的车辆需先退出栈然后将车辆退出,再把那些车重新进入,因此我们就需要再加一个栈方便车辆的退出和进入,队列是用来存放便道上的车辆的数据结构,因为便道有限所以应该使用公式法描述的队列。然后通过一个数组记录车辆进入和出去的时间用来计算停车的费用。

以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟。

管理。每一组输入数据包括三个数据项:汽车 “到达”或“离去”信息,汽车牌照号以及到达或。

离去的时刻。对每一组输入的数据进行操作后的输出信息为:若是车辆到达,则输出汽车在。

停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳。

的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。

该题目帮助我们复习了栈和队列两个基本的数据结构,但是不难发现这个题目存在许多问题,现实生活中我们不能够以一个栈的形式来作为停车场,而且我们也不能使用多余的便道,因此我人该题目的停车场应使用链表进行描述,可以实现车辆的随到随进,超出部分可以进入等候便道,车辆出去时不必退出后来车辆。

if(order ==a车辆进入操作。

if(order ==d车辆出去操作。

}while(order!='e');

个人**号码查询系统:

人们在日常生活中经常需要查找某个人或某个单位的**号码,本实验将实现一个简单的个人**号码查询系统,根据用户输入的信息(例如姓名等)进行快速查询。

利用二叉搜索树和asc码实现对姓名的搜索提高查询效率,利用输入输出流完成对结果的输入以及输出。

使用二叉搜索树来实现该个人**号码查询系统。

利用二叉搜索树实现对姓名查询时很容易的想到利用汉字的每一个字节的asc码来实现对姓名的查询功能,对人物信息进行添加删除的操作也一样,添加操作是直接找到需要添加的位置进行插入操作,而删除操作即利用二叉搜索树找到该人,然后直接将此人信息全部赋空值达到删除的目的,其中实现对一个人信息**的关键是建立一个结构体,它保存着任务的姓名、**、移动手机以及电子邮箱。

数据结构课程设计

课程设计说明书 题目哈夫曼编码问题的设计和实现。课程名称数据结构课程设计。院 系 部 中心。专业。班级。学生姓名。学号。设计地点。指导教师。设计起止时间 2008 年6月 2日至 2008 年 6月 6 日。目录。1 问题描述 2 1.1 题目内容 2 1.2 基本要求 2 1.3 测试数据 2 2...

数据结构课程设计

数据结构 课程设计。实验报告。学院 信息工程学院。班级 姓名 学号 指导老师 题目2 一元多项式的计算。1 实验目的。1 掌握链表的灵活运用 2 学习链表初始化和建立一个新的链表 3 知道怎样去实现链表删除结点操作与插入结点 4 理解链表的基本操作 包括数据域数据的相加 并能灵活运用。2 实验内容。...

数据结构课程设计

班级 信计 1102 姓名 李娜娜。学号 1108060209 设计日期 2013.07.15 西安科技大学计算机学院 1.实验题目 编制一个演绎扫雷游戏的程序。2.问题描述。做一个n x m的扫雷游戏,每个方格包含两种状态 关闭 closed 和打开 opened 初始化时每个方格都是关闭的,一个...