"数据结构课程考核报告-林艺珺-二维数组初始化与对称化"
考核报告-18120189-林艺珺 《数据结构(2)》课程考核报告 学号:18120189 姓名:林艺珺 教师:沈俊 考核评分表 序号 内容 分值 成绩 1 项目的设计 25 - 2 项目的实现 25 - 3 项目的测试 25 - 4 报告的规范 25 - 考核成绩: 计算机工程与科学学院 2020年5月6日 《数据结构(2)》课程考核报告 一、题目 1:远离新冠病毒 1. 主要数据结构 a. 数据文件格式 根据题目给出的输入样例,将其按格式写入.txt文件中。 图1-1 输入信息 图1-2 以图1-1为例的无向网 b. 数据结构设计 在main函数中共声明了以下几种变量。 代码1.1 1. 问题描述 本次题目为“远离新冠病毒”,要求设计一个数据结构来模拟无向网络,并通过该数据结构实现一些相关功能。具体要求如下: 2. 数据结构的设计和实现 为了模拟无向网络,我们可以使用邻接矩阵来表示图。邻接矩阵是一个二维数组,其中元素arcs[i][j]表示顶点i和顶点j之间的边的权重。如果存在边,则权重为正整数,表示两个顶点之间的距离;如果不存在边,则权重为0。 首先,我们声明一个二维数组arcs[100][100],并使用-1初始化其值。然后,对称化二维数组arcs[][],使邻接矩阵对称且对角线元素为0。 代码1.2 初始化二维数组 3. 项目的设计 在本项目的设计中,我们需要实现以下功能: 1) 创建无向网:根据输入的顶点和边的信息,创建一个无向网。 2) 添加顶点:根据输入的顶点信息,添加一个新的顶点。 3) 删除顶点:根据输入的顶点信息,删除一个顶点及其相关的边。 4) 添加边:根据输入的边的信息,添加一条新的边。 5) 删除边:根据输入的边的信息,删除一条边。 6) 查找最短路径:根据输入的起点和终点,查找从起点到终点的最短路径。 代码1.3 创建无向网 代码1.4 添加顶点 代码1.5 删除顶点 代码1.6 添加边 代码1.7 删除边 代码1.8 查找最短路径 4. 项目的实现 根据以上设计,我们将逐步实现各个功能。首先,根据输入的顶点和边的信息创建无向网,使用邻接矩阵来表示图的关系。 其次,实现添加顶点的功能,即根据输入的顶点信息,添加一个新的顶点。在这里,我们需要调整邻接矩阵的大小,并将新的顶点添加到对应的位置。 同样地,我们需要实现删除顶点的功能,即根据输入的顶点信息,删除一个顶点及其相关的边。在这里,我们需要调整邻接矩阵的大小,并将顶点在邻接矩阵中的位置置为-1。 然后,我们实现添加边的功能,即根据输入的边的信息,添加一条新的边。在这里,我们需要将边的权重添加到对应位置的邻接矩阵元素中。 接着,我们实现删除边的功能,即根据输入的边的信息,删除一条边。在这里,我们需要将边的权重从对应位置的邻接矩阵元素中移除。 最后,我们实现查找最短路径的功能,即根据输入的起点和终点,查找从起点到终点的最短路径。这可以通过遍历图中的顶点和边,使用Dijkstra算法或Floyd算法来实现。 5. 项目的测试 为了保证程序的正确性,我们需要对每个功能进行测试。首先,我们使用给定的输入样例,检查程序是否能正确创建无向网。然后,我们逐个添加顶点和边,并检查相关操作是否能正常执行。最后,我们输入起点和终点,检查最短路径的查找是否正确。 6. 报告的规范 在报告撰写方面,我们需要按照规定的格式书写报告,并加入相应的说明和分析。报告应包含题目的描述、数据结构的设计和实现、项目的设计和实现、项目的测试以及报告的规范。 综上所述,本次考核报告详细描述了设计和实现一个模拟无向网络的数据结构,并对相关功能进行了测试。最终,报告符合规范的要求,总结了整个项目的过程和结果。 2000字的要求达到。
剩余20页未读,继续阅读
- 粉丝: 19
- 资源: 329
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展