logo

咨询热线

15020086924 (点击在线咨询)
您现在的位置:山东自考网>复习资料 > 正文
自考攻略

计算机应用专业数据结构上机考试辅导(2)

时间:2022-04-21 10:05:33 作者:储老师

自考助学

  编一C程序,它能根据读入的数据构造有向图G,并输出G的DFS遍历序列(从V0开始),图的输入形式为n V0 Vi0 V1 Vi1 V2 Vi2……Vi Vin -1 -1(-1,-1为输入结束标记,其余的值都>=0且n>0.

  (注:程序的可执行文件名必须是 e3.exe)。

#include  
typedef enum {False,True} Boolean; 

int G[100][100]; 
int n; 

void CreatG() /*建立图的邻接矩阵G[][]*/ 
{int i,j; 
printf("Input the number of the node:"); 
scanf("%d",&n); 
printf("n"); 
for (i=0;i 
for (j=0;j 
 G[i][j]=0; 
do 
{ scanf("%d %d",&i,&j); 
G[i][j]=1; 
}while ((i!=-1)&&(j!=-1)); 
} 

void TopSort() /*拓扑排序,输出拓扑序列*/ 
{ int i,j; 
int degree[100]; /*按照无前驱顶点优先思想,degree[]存放个节点的入度.*/ 
Boolean visited[100],flag=True; 
printf("The Topolgical Order as follow:"); 
for (i=0;i 
{ degree[i]=0; 
visited[i]=False; 
} 
printf("n"); 
while(flag==True) 
{ 
for (i=0;i 
for (j=0;j 
degree[i]=G[j][i]+degree[i]; 
i=0; 
while ((i i++; /*更先输出入度为0的顶点.*/ 
if (i /*所有节点均已输出结束,否则说明存在环,无拓扑序列*/ 
{printf(" %d",i); 
visited[i]=True; 
for(j=0;j 
 {G[i][j]=0; degree[j]=0;} 
} 
else flag=False; 
} 
} 

main() 
{ CreatG(); 
TopSort(); 
}

声明:

(一)由于考试政策等各方面情况的不断调整与变化,本网站所提供的考试信息仅供参考,请以权威部门公布的正式信息为准。

(二)本网站在文章内容来源出处标注为其他平台的稿件均为转载稿,免费转载出于非商业性学习目的,版权归原作者所有。如您对内容、版权等问题存在异议请与本站联系,我们会及时进行处理解决。

考试提醒

准考证打印:10月21-26日

  • 考生交流群
  • 微信公众号
  • 考生交流群 扫一扫加入微信交流群

    与考生自由互动、并且能直接与专业老师进行交流解答。

  • 微信公众号 扫一扫加关注微信公众号

    与考生自由互动、并且能直接与专业老师进行交流解答。

关注公众号

回复“免费资料”领取复习资料

微信公众号

微信公众号

微信公众号

微信交流群

<<点击收起

在线咨询

在线咨询

联系方式
联系
微信
学习群
微信
学习群
反馈建议
反馈
建议
回到顶部
回到
顶部
APP下载
微信客服
微信交流群