关闭

Topological sort &&Active On vertex Network

607人阅读 评论(0) 收藏 举报

拓朴排序、用弧表示优先关系的图

快四级了啊,再不过就死人了,烦心着

系里面举行程序设计大赛啊,就快开始了呢,心痒痒,想拼拼

快期末考试了,得看看毛概之类的东东了啊,有点怕死

快换本本了,心里开心呢

静下心来,还是写了个小算法出来

图如下:

 程序如下:

#include <iostream.h>

#incldue <stdio.h>

#include <conio.h> 

#define MAX 6

void main(){
 int Adjvex[MAX][MAX]={{0,1,1,1,0,0},      //初始化AOV
                              {0,0,0,0,0,0},
                              {0,1,0,0,1,0},
                              {0,0,0,0,1,0},
                              {0,0,0,0,0,0},
                              {0,0,0,1,1,0}};
 int flag[MAX]={0,0,0,0,0,0},m,i,j,out=0;  //数组flag[MAX]用来记数
 i=0;j=0;
 clrscr();
 do{
  for(j=0;j<MAX;j++)           //测试数i的入度是否为0
   if(Adjvex[j][i]==0)
   flag[i]++;                         
   if(flag[i]==MAX){
     printf("%d/t",i+1);        //输出这个入度为0的点
     out++;                          //记录下已经输出了一个点
     flag[i]=100;                 //设置flag[i]以免第二轮循环仍然输出
     for(m=0;m<MAX;m++)//使已经输出的点i 的出度为0
     Adjvex[i][m]=0;
    if(out==MAX)               //如果每个点都输出过了,刚退出循环
      break;
   }
   else flag[i]=0;            //设置flag[i]使下次能正常记数

lp:  i=(i+1)%MAX;             //循环条件

    if(flag[i]==100)       //如果此点已经输出过了,刚跳向下一个

      goto lp;
 }
 while(1);
}

 

 文章写完了,怎么这个网页程序又提醒我必须填入文章内容哦,郁闷死了,搞得我每次都白写点东东上

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:61635次
    • 积分:1126
    • 等级:
    • 排名:千里之外
    • 原创:45篇
    • 转载:12篇
    • 译文:0篇
    • 评论:17条
    最新评论