📄 adjgraph.h
字号:
// AdjGraph.h: interface for the AdjGraph class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_ADJGRAPH_H__AC9A0C5F_AE70_4728_8607_3475342C8B1B__INCLUDED_)
#define AFX_ADJGRAPH_H__AC9A0C5F_AE70_4728_8607_3475342C8B1B__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define MAX 20
#define MAXINT 10000
#define LOCATE 10
typedef struct ArcNode{
int adjvex; //该弧所指向的顶点的位置
struct ArcNode * nextarc; //指向下一条弧的指针
int right; //弧的权值
}ArcNode,* ArcPointer;
typedef char VertexType[LOCATE];
typedef struct {
VertexType vexdata; //顶点信息
ArcPointer firstarc;//出边头指针,指向第一条出边
}VexNode;
typedef int dist[MAX];
typedef int path[MAX][MAX];
class AdjGraph
{
public:
VexNode adjlist[MAX]; //邻接表
int vexnum,arcnum;//网的当前顶点和弧数
public:
AdjGraph();
virtual ~AdjGraph();
public:
void CreatGraph(AdjGraph &gb);
void ShortPath(AdjGraph gb,VertexType q,dist &d,path &p);
};
#endif // !defined(AFX_ADJGRAPH_H__AC9A0C5F_AE70_4728_8607_3475342C8B1B__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -