用邻接矩阵存储一个有向图,写一算法计算出度为0的顶点个数,请各位大牛解答,急死了
3条回答 默认 最新
- cxlovu 2015-10-20 15:36关注
#include <iostream> using namespace std; #define MAXN 105 int n, m, Edge[MAXN][MAXN]; //顶点数,有向边数,邻接矩阵; int Mc, Md, u, v; //入度,出度,边的起点,终点; void Init() //初始化; { memset(Edge, 0, sizeof(Edge)); for(int i=1; i<=m; i++) { //添加有向边; scanf("%d %d", &u, &v); Edge[u-1][v-1] = 1; } } int get_Out_Degree() //输出有向边各顶点的出度; { int res = 0; printf("该有向图各顶点的出度分别为:"); for(int i=0; i<n; i++) { Md = 0; for(int j=0; j<n; j++) Md += Edge[j][i]; printf("%d", Md); if(Md == 0) res++; i == n-1 ? printf("\n") : printf(" "); } return res; } int main() { while(~scanf("%d %d", &n, &m) && n || m) { Init(); int res = get_Out_Degree(); printf("出度为0的个数为%d\n", res); } return 0; }
测试数据格式:
先输入两个数n,m
n是顶点的个数,m是有向边数
然后输入m行,每行是两个端点
允许循环输入,停止条件是m = n = 0
望采纳本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 3
悬赏问题
- ¥17 pro*C预编译“闪回查询”报错SCN不能识别
- ¥15 微信会员卡接入微信支付商户号收款
- ¥15 如何获取烟草零售终端数据
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 HLs设计手写数字识别程序编译通不过
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 TYPCE母转母,插入认方向