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

📄 7.11.c

📁 耿国华高教出版社的《数据结构》的光盘(C语言)
💻 C
字号:
int TopoSort(AdjList G)
{ 
	Stack S;
	int indegree[MAX_VERTEX_NUM];
	int i,count,k;
    	ArcNode *p;
    	FindID(G,indegree);  /*求各顶点入度*/
    	InitStack(&S);       /*初始化辅助栈*/
    	for(i=0;i<G.vexnum;i++)
		if(indegree[i]==0) 
			Push(&S,i);    /*将入度为0的顶点入栈*/
    	count=0;
    	while(!IsEmpty(S)) 
    	{
		Pop(&S,&i);
		printf("%c",G.vertex[i].data);
		count++;  /*输出i号顶点并计数*/
        	p=G.vertexes[i].firstarc;
		while(p!=NULL)
		{ 
			k=p->adjvex;
            		indegree[k]--;      /*i号顶点的每个邻接点的入度减1*/
		    	if(indegree[k]==0)  
			Push(&S, k);  /*若入度减为0,则入栈*/
		    	p=p->nextarc;
		}
	} /*while*/
    	if(count<G.vexnum)  
		return(Error);  /*该有向图含有回路*/
    	else  
		return(Ok);
}

⌨️ 快捷键说明

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