⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p294.cpp

📁 包含常见的数据结构的类和函数
💻 CPP
字号:
#include "p292.cpp"#include "iostream.h"template <class NameType, class DistType> void  AOVGraph<NameType,DistType>::TopologicalSort ( ) {		//对n个顶点的AOV网进行拓扑排序。top是入度为零顶点栈的栈顶指针。		   int top = -1;		   for ( int i=0; i<NumVertices; i++ )						//建立入度为零顶点的链栈		   {			 if ( count[i] == 0 ) 				{ count[i] = top;  top = i;	};		//进栈运算		   }		   for ( i=0; i<NumVertices; i++ )			 if ( top == -1 )				{ cout << "Network has a cycle" << endl;					return; }			 else			 {			    int j = top;  top = count[top];				//一个入度为零的顶点出栈			    cout << j << endl;						//输出顶点j			    Edge<NameType,DistType> * l = NodeTable[j].adj;				//顶点j的边链表的链头指针			    while ( l )				{							// l ( 0, 有出边				  int k = l->dest;						//取该边的终点k, 该顶点的入度减1					  if ( --count[k] == 0 ) {					  count[k] = top;  top = k; }	//入度减至0的顶点进入度为零的顶点栈				  l = l->link;						// 取j的下一条出边			    }			 }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -