作者:@张扶摇
本文为作者原创,转载请注明出处:https://www.cnblogs.com/zhangshengdong/p/9817232.html
目录
图的定义:
1) 一个图(graph)G=(V,E)由顶点(vertex)集V和边(edge)集E组成。
2) 每一条边就是一个点对<v,w>。其中v,w属于V。有时也把边称作弧(arc)。且称v为弧尾(Tail)或初始点(Initial node)。w为弧头(Head)或终端点(Terminal node)。
如果点对是有序的,那么图就叫做有向的(directed),有向的图叫做有向图(digraph)。
如果是具有<v,w>和<w,v>,即(v,w)是对称的,是无序对。表示v和w之间的一条边(edge),此时的图为无向图(Undigraph)。
对于G1的表示为:G1=(V1,{A1})
其中:V1={v1,v2,v3,v4}
A1={<v1,v2>,<v1,v3>,<v3,v4>,<v4,v1>} 这里的<>括号代表的是有方向的。称之为arc。
对于G2的表示为:G2=(V2,{E2})
其中:V2={v1,v2,v3,v4,v5}
E2={(v1,v2),(v1,v4),(v2,v3),(v3,v4),(v2,v5),(v3,v5)}
图的分类:
- 有1/2n(n-1)条边(edge)的无向图称为完全图(Completed graph)。
- 有n(n-1)条弧(arc)的有向图称为有向完全图。
- 有很少条边或弧(e<nlogn)的图为稀疏图(Sparse graph)。
- 有很多条边或弧(e>nlogn)的图为稠密图(Dense graph)。
其他术语:
- 在图的边或弧上具有相关的数,此数字称之为权(Weight)。
- 假设有两个图G=(V,{E})和G'=(V',{E'}),如果V'属于V,E'属于E,称G'为G的子图(Subgraph)。
- 顶点V的度(Degree)是和v相关联的数目,记为TD(V)。
-
- 以顶点V为头的弧的数目为V的入度(InDegree),记为ID(V)。
- 以顶点V为尾的弧的数目为V的出度(Outdegree),记为OD(V)。
举例:
在有向图G1中,顶点V1的入度ID(v1)=1,出度OD(v1)=2。度TD(v1)=1+2=3.
感谢您的阅读,如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮。本文欢迎各位转载,但是转载文章之后必须在文章页面中给出作者和原文连接。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统