图是什么
约 8 分钟
一堆点(顶点,vertex)加上点之间的连线(边,edge),合起来就是图(graph)。地铁站是点、区间线路是边;人是点、好友关系是边;网页是点、超链接是边——生活里到处是图。我们通常用 表示点数、 表示边数,点一般编号成 或 。一条边连接的两个点叫它的端点;从一个点连出的边的条数叫这个点的度。
int n, m; // n 个点,m 条边
cin >> n >> m;
for (int i = 0; i < m; i++) {
int u, v;
cin >> u >> v; // 读入一条连接 u 和 v 的边
// 存进图里(下一节讲怎么存)
}
图是后面最短路、连通性、树等一切内容的基础。做题第一步永远是先看清:题目里"谁是点、谁是边"。很多应用题(课程安排、任务依赖、传染扩散)本质就是把现实关系抽象成图,抽象对了,套模板就能做。
小纸条
说出两个生活中的图。
登录 后可看答案