
求有向图中某顶点的入度
第一行:顶点数和边数,空格隔开。 第二行:每个顶点的数据,中间没有空格。 第三行:每条边,格式为i j,中间有空格。 第四行:要查询的顶点序号。
发布日期:2021-05-07 17:58:54
浏览次数:23
分类:精选文章
本文共 1556 字,大约阅读时间需要 5 分钟。
有向图的构建与入度计算
在解决这个问题时,我们需要创建一个有向图,并计算某个顶点的入度。以下是详细的步骤和方法:
输入描述
输出描述
输出某个顶点的出度。
方法思路
读取输入数据:
- 读取顶点数和边数。
- 读取每个顶点的数据,存储在数组中。
- 读取每条边,存储在二维数组中。
计算出度:
- 遍历所有顶点,检查该顶点有多少条出边。
解决代码
#include#include using namespace std;class Text {public: Text(int v, int e) { CountInter = 0; CountOuter = 0; vertexNum = v; edgeNum = e; int i; for (i = 0; i < vertexNum; i++) { char c; cin >> c; vertex[i] = c; } for (int x = 0; x < vertexNum; x++) { for (int y = 0; y < vertexNum; y++) { edge[x][y] = 0; } } for (int j = 0; j < edgeNum; j++) { int x, y; cin >> x >> y; edge[x][y] = 1; } } void CalculateOuter(int v) { CountOuter = 0; for (int x = 0; x < vertexNum; x++) { if (edge[x][v] == 1) { CountOuter++; } } }private: char vertex[100]; int edge[100][100]; int vertexNum; int edgeNum; int CountOuter;};int main() { int v, e; cin >> v >> e; Text T(v, e); int n; cin >> n; T.CalculateOuter(n); cout << T.CountOuter << endl; return 0;}
代码解释
类定义:Text
类用于存储和处理有向图的数据。
vertex
数组存储顶点数据。edge
二维数组存储图的边信息。CountOuter
记录某顶点的出度。
构造函数:
- 初始化顶点数和边数。
- 读取顶点数据并存储。
- 初始化边数组为0。
- 读取每条边并存储。
计算出度:
- 遍历所有顶点,检查边数组,统计出度。
主函数:
- 读取输入数据。
- 调用计算出度方法并输出结果。
通过上述方法,我们可以正确构建有向图并计算出某顶点的出度。
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2025年05月12日 20时47分24秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
看明白这两种情况,才敢说自己懂跨链! | 喵懂区块链24期
2021-05-10
Android DEX加固方案与原理
2021-05-10
iOS_Runtime3_动态添加方法
2021-05-10
Problem G. The Stones Game【取石子博弈 & 思维】
2021-05-10
openssl服务器证书操作
2021-05-10
我用wxPython搭建GUI量化系统之最小架构的运行
2021-05-10
selenium+python之切换窗口
2021-05-10
重载和重写的区别:
2021-05-10
账号转账演示事务
2021-05-10
map[]和map.at()取值之间的区别
2021-05-11
Struts2-从值栈获取list集合数据(三种方式)
2021-05-11
VTK:可视化之RandomProbe
2021-05-12
Java时间
2021-05-12
【编程】C语言入门:1到 100 的所有整数中出现多少个数字9
2021-05-12
pair的用法
2021-05-12
javaWeb服务详解(含源代码,测试通过,注释) ——Emp的Dao层
2021-05-14
echarts 基本图表开发小结
2021-05-14
TreeSet、TreeMap
2021-05-14