- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摘 要
本文实现了图的最短路径存储及BFC遍历,采用Visual C++ 6.0的控制台工程和MFC工程分别实现了邻接矩阵在桌面上的的显示以及实现对图的广度遍历程序,图是一种比较复杂的非线性数据结构,广度优先搜索(BFS)是图的遍历的方法之一,它的目的是系统地展开并检查图中的所有节点,以找寻结果 目 录
1 需求分析 1
2 算法基本原理 1
3 类设计 2
3.1 类的概述 2
3.2 类的接口设计 2
3.3 类的成员函数的设计 3
4 基于控制台的应用程序 8
4.1 主函数设计 8
4.2 运行结果及分析 9
5 基于MFC的应用程序 9
5.1 图形界面设计 10
5.2 程序代码设计 12
5.3 运行结果及分析 15
结 论 16
参考文献 17
1 需求分析
算法基本原理G是有n个节点的图,则G的邻接矩阵是如下定义的n X n矩阵。如图所示图2的邻接矩阵如下:
图1 无向图G 图2 G的邻接矩阵
广度优先搜索遍历类似于树的按层次遍历的过程。假设从图中某顶点v之出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使“先被访问的顶点的邻接点”先于“后被访问的顶点的邻接点”被访问,直至图中所有已被访问的顶点的邻接点都被访问到。若此时图中尚有顶点未被访问,则另选图中一个未曾被访问的顶点做起始点,重复上述过程,直至图中所有顶点都被访问到为止。换句话说,广度优先搜索遍历图的过程是以v为起始点,由近至远,依次访问和v有路径相通且路径长度为1,2,...的顶点。例如,对图4所示无向图进行广度优先搜索遍历的过程:首先访问1和1的邻接点2和3,然后依次访问2的邻接点4和5及3的邻接点6和7,最后访问4的邻接点8.由于这些顶点的邻接点均已被访问,并且图中所有顶点都被访问,由此完成了图的遍历。得到的顶点访问序列为:1-2-3-4-5-6-7-8。
3 无向图
3 类设计3.1 类的概述
本设计面临的计算问题的关键是矩阵运算。graph,然后设计成员变量,最后还要设计成员函数,实现对邻接矩阵的输出cout(),广度优先搜索函数BFS(),然后用队列循环。考虑到图的初始化比较复杂,需要输入矩阵信息,还要设计函数()实现对矩阵的初始化。
3.2 类的接口设计
#includeiostream
#define Length 10
#define ERROR 0
#define TRUE 1
using namespace std;
class XU_DL
{
private:
int *item;
int front;
int rear;
int maxlength;
public:
XU_DL(int length=Length) //对队列的初始化
{
if(lengthLength)length=Length;
item=new int [length];
maxlength=length;
front=0;
rear=0;
}
~XU_DL() //析构函数销毁队列
{
delete [] item;
}
void ClearXU_DL() //清空队列
{
front=rear=0;
}
int Getlength() //获得长度
{
if(rear==front) return ERROR;
return ((rear-front)+maxlength)%maxlength;
}
int Inser(int e) //插入数据e
{
if((rear+1)%maxlength==front)return ERROR; //队满时的判断语句
rear=(rear+1)%maxlength;
item[rear]=e;
return TRUE;
}
int Gethand() //获得队头元素,并删除该
您可能关注的文档
- 人教版三年级下册语文基础训练程序.doc
- 检测技术期末复习描述.doc
- 人教版三年级下语文附加题程序.doc
- 检测书改版描述.doc
- 植病45细菌与病毒描述.ppt
- 橱柜知识全面介绍描述.ppt
- 检测题九种群群落生态系统过关描述.doc
- 人教版小学二年级语文下册期末复习程序.doc
- 洗发露和洗洁精理化指标感想程序.doc
- 重庆市2015年初中毕业暨高中招生考试物理及标准程序.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)