实践性考核实验.pptxVIP

  • 1
  • 0
  • 约6.29千字
  • 约 40页
  • 2021-08-25 发布于河北
  • 举报
过程性考核实验实验一、单链表的插入和删除实验二、括号匹配检查实验三、图的深度优先遍历实验四、排序算法的比较实验五、查找算法的比较实验一、单链表的插入和删除实验二、括号匹配检查实验三、图的广度优先遍历实验名称:图的广度优先遍历实验目的: 熟悉图的邻接表存储方式, 掌握图的结构体定义, 掌握图的深度优先遍历算法。 熟悉队列的基本操作实验内容: 1,定义队列及其基本操作函数 2,定义图的邻接表存储结构体 3,定义图的输入函数 4,定义图的遍历函数 5,设计main函数,输入图的顶点个数,是否有向图,由用户输入图的邻接矩阵和遍历起点序号,输出遍历顶点序号 运行结果:运行结果:V2V4V1V7V6V3V5运行结果:图的邻接矩阵结构体定义typedef string VertexType;typedef int EdgeType;struct MGraph{ VertexType V[MaxNum+1]; EdgeType E[MaxNum+1][MaxNum+1]; int Visited[MaxNum+1]; int n,e;};循环队列结构体定义typedef int DataType;#define MAXQSIZE 100typedef struct { DataType data[MAXQSIZE]; int front,rear;}SqQueue;队列的基本操作定义void InitQueue(SqQueue Q){ Q.front =Q.rear =0; }int QueueEmpty(SqQueue Q){ if(Q.front==Q.rear) return 1; else return 0;}int QueueFull(SqQueue Q){ if(Q.front==(Q.rear+1)%MAXQSIZE) return 1; else return 0;}队列的基本操作定义void EnQueue(SqQueue Q, DataType e){ if((Q.rear+1)%MAXQSIZE==Q.front) return; Q.data[Q.rear]=e; Q.rear =(Q.rear +1) %MAXQSIZE;}void DeQueue(SqQueue Q, DataType e){ if( Q.front ==Q.rear ) return ; e=Q.data [Q.front ]; Q.front =(Q.front +1)%MAXQSIZE;}深度优先遍历函数定义void BFSTraverse(struct MGraph G,int Starti){ for(i=1; i=G.n; i++) G.Visited[i] = 0; InitQueue(Q); cout广度优先遍历序列如下:endl; if (G.Visited[Starti]==0) { G.Visited[Starti] = 1; cout 访问 G.V[Starti]endl EnQueue(Q, Starti); while (!QueueEmpty(Q)) { …… } }}深度优先遍历函数定义 …… while (!QueueEmpty(Q)) { DeQueue(Q, u w=FirstAdjVex(G, u); while( w!=0) { if (G.Visited[w]==0) // 尚未访问 { G.Visited[w]=1; cout 访问 G.V[w]endl; EnQueue(Q, w); } w=NextAdjVex(G,u,w); } } 深度优先遍历函数定义int FirstAdjVex(struct MGraph G, int u){ int i; for(i=1;i=G.n;i++) if(G.E[u][i]==1) return i; return 0;}int NextAdjVex(struct MGraph G,int u,int w){ int i; for(i=w+1;i=G.n;i++) if(G.E[u][i]==1) return i; return 0;}Main函数定义void main(){ struct MGraph G1; int i,j,k; cout请输入顶点个数:; cinG1.n; cout请输入边数:; cinG1.e; for(i=1; i=G1.n; i++) { cout请输入第i顶点名称:; cinG1.V[i]; } Main函数定义……//初始化邻接矩阵for(i=1;i=G1.n;i++) for(j=1;j=G1.n;j++) G1.E[i][j]=0;//输入边的起点序

文档评论(0)

1亿VIP精品文档

相关文档