资源简介
用邻接矩阵存储图的信息 图的信息由用户输入 算法思想:1、找到度为1的顶点 将这个点删除 并把它的邻接点度数减一 反复执行此操作直到没有度为1 的顶点2、剩下的点已经在环中,找到最大的边 ,删除 3、反复执行1 2操作 直到最后找不到环路
代码片段和文件信息
#include
#include
#include
#include
#define MaxSize 30
#define Affinity 100
using namespace std;
class AdjGraph
{
public:char *vexs;
int **arcs;
int *visited*de;
int vexnumarcnum;
AdjGraph()
{
vexnum=arcnum=0;
vexs=NULL;visited=NULL;arcs=NULL;de=NULL;
}
AdjGraph(int vint a)
{
int ij;
vexnum=v;arcnum=a;de=new int[vexnum];
vexs=new char[vexnum];visited=new int[vexnum];
arcs=(int **)new int*[vexnum];
for(i=0;i {
arcs[i]=new int[vexnum];
}
for(i=0;i {
visited[i]=0;vexs[i]=‘\0‘;de[i]=0;
for(j=0;j {
if(i==j){arcs[i][j]=0;}
else{
arcs[i][j]=Affinity;}
}
}
}
~AdjGraph(){}
int posvex(char x)
{
int i=0;
for(i=0;i {
if(vexs[i]==x)
break;
}
if(i {return i;}
else
{return -1;}
}
void clearVisit()
{
int i;
for(i=0;i {
visited[i]=0;
}
}
bool CreateDUG()
{
cout<<“请输入顶点信息:“< int i=0ab;char lr;
for(i=0;i {cin>>vexs[i];}
for(i=0;i {
int w;
cout<<“输入第“< cin>>l>>r;
a=posvex(l);b=posvex(r);
cout<<“请输入该边的权重:“< cin>>w;
arcs[a][b]=w;arcs[b][a]=w;de[a]++;de[b]++;
}
return true;
}
int FirstAdj(int i)
{
int j=0;
while(j {j++;}
if(j return j;
else
return -1;
}
int SecondAdj(int iint k)//顶点下标为i的顶点相对于k的下一个顶点k为i的当前邻接顶点二者都是顶点下标
{
int j=k+1;
while(j {j++;}
if(j return j;
else
return -1;
}
void DFS(int v)
{
int w;visited[v]=1;cout< for(w=FirstAdj(v);w>=0;w=SecondAdj(vw))
{
if(!visited[w])
{DFS(w);}
}
}
void BFS(int v)
{
int uw;;
queue q1;
if(!visited[v])
{
visited[v]=1;cout< q1.push(v);
while(!q1.empty())
{
u=q1.front();
q1.pop();
for(w=FirstAdj(v);w>=0;w=SecondAdj(vw))
{
if(!visited[w])
相关资源
- C流程图生成器,用C语言代码 生成C语
- 将图片转换为C语言数组的程序
- 电子时钟 有C语言程序,PROTEUS仿真图
- 用C语言进行数字图像处理
- Wi-Fi IoT智能家居套件-Hi3861(原理图
- Qt画图工具源码(qgraphics draw)
- Qt 实现心电图
- Qt实现 屏幕截图
- 使用QWT库实现接收串口数据,并根据
- 使用wxWidgets进行跨平台程序开发
- QT视频播放器(基于FFmpeg)
- ADS1263驱动程序+电路图
- 基于esp32的摄像头采集图像代码
- stm32f103c8t6开发板原理图+pcb
- 基于arduino的红绿灯程序,包附原理图
- 数据结构 图的遍历源代码
- qt处理图形
- H.264标准详细图解
- CreatBitmap图片合成源码
- 易语言png 多行多列切图
- basler相机图像采集和显示
- 交互式计算机图形学 第六版 OpenGL源代
- c++ 画图(14Qt-XPS)
- 图形学简单绘图系统
- mfc绘图大全(画直线、矩形、椭圆)
- C++调用百度地图案例
- opencv图片扫描以及校正
- MFC文档_视图_框架_模板结构体系深入
- 图像预处理五种滤波
- 思维导图(C++ Primer Plus(第六版).
评论
共有 条评论