#include <stdio.h>
typedef int datatype; /*假定线性表元素的类型为整型*/
#define maxsize 1024 /*假定线性表的最大长度为1024*/
# define n 100 /* 图的顶点最大个数 */
typedef char VEXTYPE; /* 顶点的数据类型 */
typedef float ADJTYPE; /* 权值类型 */
typedef struct
{
VEXTYPE vexs[n] ; /* 顶点信息数组 */
ADJTYPE arcs[n][n] ; /* 边权数组 */
int num ; /* 顶点的实际个数 */
}GRAPH;
/***********************1。置空图**********************/
void GraphInit(GRAPH *L)
{
L->num=0;
}
/***********************2。求结点数**********************/
int GraphVexs(GRAPH *L)
{
return(L->num);
}
/***********************3。创建图**********************/
void GraphCreate(GRAPH *L)
{
int i,j;
GraphInit(L);
printf("请输入顶点数目:");
scanf("%d",&L->num);
printf("请输入各顶点的信息(单个符号):");
for(i=0;i<L->num;i++)
{
fflush(stdin);
scanf("%c",&L->vexs[i]);
}
printf("请输入边权矩阵的信息:");
for(i=0;i<L->num;i&
经典算法8:检索与周游之广度和深度优先遍历图
最新推荐文章于 2024-03-13 15:38:05 发布
本文介绍了图的两种遍历方法——深度优先遍历(DFS)和广度优先遍历(BFS),包括它们的实现原理和在C语言中的代码实现。通过DFS和BFS,可以从指定节点出发遍历图中所有可达的节点。同时,提供了创建图、输出图以及从给定点开始的遍历功能。
摘要由CSDN通过智能技术生成