数据结构实验:C++实现邻接矩阵创建无向图以及BFS和DFS遍历

数据结构实验四:利用邻接矩阵创建无向图,并实现BFS和DFS遍历


1.实验目的

采用邻接矩阵或邻接表进行图的存储
分别完成图的深度优先和宽度优先搜索

2.无向图类

#ifndef graph_h
#define graph_h
#include<iostream>
#include<queue>
#include<stack>
#include<map>
using namespace std;
//利用邻接矩阵构造无向图,实现BFS和DFS遍历
class AMGraph{
	char *vex;//存储顶点
	int **arc;//邻接矩阵。   边的权值与顶点数据类型分别为int和char型
	int vexNum, arcNum;//图的点数和边数
	map<char, int>m;  //实现顶点到坐标的映射
	map<int, char>_m;//实现坐标到顶点的映射  如果顶点和权值均为Int型就不需要映射
public:
	AMGraph(int _vexNum, int _arcNum);
	void createUDN();  //创建无向图
	void DFS(char ch);
	void BFS(char ch);//从指定顶点出发遍历
};
AMGraph::AMGraph(int _vexnum, int _arcnum) :vexNum(_vexnum), arcNum(_arcnum) {
	vex = new char[_vexnum];
	arc = new int* [_vexnum];
	for (int i = 0; i < _vexnum; ++i) {
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值