(数据结构)图——图、顶点、无向边、无向图、有向边、有向图、简单图、无向完全图、有向完全图、稀疏图、稠密图、权、网、子图的相关概念
图的定义:
图是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E)。
其中:G表示一个图,V是图G中顶点的集合,E是图G中边的集合。
注意:
1、线性表中我们把数据元素称为元素;树中将数据元素称为结点;在图中数据元素称为顶点。
2、线性表中可以没有数据元素,称为空表;树中可以没有结点,称为空树;在图中不允许没有顶点。在定义中,若V是顶点的集合,则强调了顶点集合V有穷非空。
3、线性表中,相邻的数据元素之间具有线性关系;树结构中,相邻两层的结点具有层次关系;在图中,任意两个顶点之间都有可能有关系,顶点之间的逻辑关系用边来表示,边集可以是空的。
无向边:若顶点Vi到Vj之间的边没有方向,则称这条边为无向边,用无序偶对(Vi,Vj)来表示。
无向图:图中任意两个顶点之间的边都是无向边。
举个例子:
G1=(V1,{E1}),其中顶点集合V1={A,B,C,D},边集合E1={(A,B),(B,C),(C,D),(D,A),(A,C)},由于是无方向的,连接顶点A与D的边,可以表示成无序对(A,D),也可以写成(D,A)。
有向边:若顶点Vi到Vj之间的边有方向,则称这条边为有向边,也称为弧,用有序偶对(Vi,Vj)来表示,Vi称为弧尾,Vj称为弧头。
有向图:图中任意两个顶点之间的边都是有向边。
举个例子:
G2=(V2,{E2}),其中顶点集合V2={A,B,C,D},边集合E2={<A,D>,<B,A>,<C,A>,<B,C>},由于是有方向的,连接顶点A与D的有向边就是弧,A是弧尾,D是弧头,<A,D>表示弧,注意不能写成<D,A>。
注意:
无向边用小括号“()”表示,而有向边则是用尖括号“<>”表示。
简单图:在图中,不存在顶点到其自身的边,且同一条边不重复出现。
无向完全图:在无向图中,任意两个顶点之间都存在边。含有n个顶点的无向完全图有n*(n-1)/2条边。
有向完全图:在有向图中,任意两个顶点之间都存在方向互为相反的两条弧。含有n个顶点的有向完全图有n*(n-1)条边。
稀疏图:有很少条边或弧的图。
稠密图:有很多条边或弧的图。
有些图的边和弧具有与它相关的数字,这种与图的边或弧相关的树叫做权。这些权可以表示从一个顶点到另一个顶点的距离或耗费。这种带权的图通常称为网。
假设有两个图G=(V,{E}) 和 G'=(V',{E'}),如果V'包含于V且E'包含于E,则称G'为G的子图。
(数据结构)图——图、顶点、无向边、无向图、有向边、有向图、简单图、无向完全图、有向完全图、稀疏图、稠密图、权、网、子图的相关概念相关推荐
- 数据结构——图的五种种类【无向图-有向图-简单图-完全无向图-有向完全图】
目录: 一:无向图 1.定义 2.图形化解释 3.结合表达式介绍 二:有向图 1.定义 2.图形化解释 3.结合表达式介绍 有向图和无向图区别: 三:简单图 1.定义 2.图形化解释 四:完全无向 ...
- ESL第十七章 无向图模型 学习/推断/成对马尔可夫独立/全局马尔可夫性、协方差图/高斯图/修改回归算法/图结构估计/图lasso、【受限】玻尔兹曼机/泊松对数线性建模/迭代比例过滤/对比散度
目录 17.1 导言 17.2 马尔可夫图及其性质 17.3 连续变量的无向图模型 17.3.1 图结构已知的参数估计 17.3.2 估计图结构 17.4 离散变量的无向图模型 17.4.1 图结构已 ...
- python找图里的环_python判断无向图环是否存在的示例
暂时是一个手动设置无向图中的边,用一个二维数组表示,后面会改进为用户自己定义无向图的边. 学习python的新手,若大佬有解决的办法,希望不吝赐教 #无向图判断环是否存在 def dfs(u,fa): ...
- 3dmax导出fbx时如何带贴图_houdini | 第一章 第三节 贴图与顶点动画
大家好,上篇文章介绍了houdini的建模思路与常用节点.本篇文章将介绍houdini材质贴图与顶点动画的设置,其中会用到game_dev模块的节点.若未安装,请查看第一节基础入门与实践中的介绍进行安 ...
- (已更新)文案+壁纸+头像+套图小程序源码,双版本,独立后台和无服务器版本
文案+壁纸+头像+套图小程序源码,有两个版本 一款无需服务器,无后台版本,(有能力的可以云开发) 一款后台版(后台设置+更多小程序.){推荐php5.6}上传后台源码解压,访问就能进入安装,需要数据库 ...
- java布尔矩阵程序_Java编程实现邻接矩阵表示稠密图代码示例
我们知道,要表示结点,我们可以用一个一维数组来表示,然而对于结点和结点之间的关系,则无法简单地用一维数组来表示了,我们可以用二维数组来表示,也就是一个矩阵形式的表示方法. 我们假设A是这个二维数组,那 ...
- java 画正方体直观图_根据给出的空间几何体的三视图,用斜二侧画法画出它的直观图.正视图侧视图俯视图...
有向图G以邻接链表存储,何体写一算法利用深度优先搜索判断图G中,从顶点i到顶点j是否有路径存在. 视图视图视图函数的定义域为()A.B.RC.{x | }D.x=1 用邻接矩阵存储一个有向图,侧画出侧 ...
- seaborn使用violinplot函数可视化小提琴图、并在violinplot函数中设置inner参数来添加横线(inner=“stick“)显示数据的稠密程度
seaborn使用violinplot函数可视化小提琴图.并在violinplot函数中设置inner参数来添加横线(inner="stick")显示数据的稠密程度(Seaborn ...
- R语言ggplot2可视化绘制二维的密度图:在R中建立二维散点数据的连续密度热图、2D密度估计、MASS包中的kde2d函数实现2D密度估计、geom_density2d函数可视化二维密度图
R语言ggplot2可视化绘制二维的密度图:在R中建立二维散点数据的连续密度热图.2D密度估计.MASS包中的kde2d函数实现2D密度估计.geom_density2d函数可视化二维密度图 目录
最新文章
- 人字拖藏SIM卡、戴微型蓝牙耳机!为考教师岗,多人作弊被抓
- 《适用于初学者的 Python》
- mysql 主从 怎么 升级_MySQL详解主从(主库升级).doc
- mysql职业要求_为什么面试的每一家都要求掌握MySQL?
- IDEA 中 右键新建时,没有新建class的解决方案
- Oracle10g数据库归档与非归档模式下的备份与恢复
- leetcode976. 三角形的最大周长(又是你得不到的简单题)
- WCF学习笔记(三):开启net.tcp端口
- VMWare12安装CentOS7操作系统并搭建GitLab环境【1】
- 37. 使用accumulate或者for_each进行区间统计
- vue实现钉钉扫码登录
- ug许可证服务器注册表删除,ug许可证卸载工具
- AI矢量绘图_Illustrator 2022矢量图形编辑制作
- 深圳小汽车车牌竞拍价格预测
- 代码分享:面波数据快速成图
- 处女座与小姐姐(三)
- 《APP逆向学习》课程介绍和什么是安卓app逆向?
- 二进制、八进制、十进制以及十六进制
- 微积分的实质?袁萌评知乎的谬论
- Packetdrill(网络协议测试工具)
热门文章
- Python软件设计基础 第八节-Tesseract-Ocr视频字幕提取
- 腾讯与小米是否终将一战?
- 计算机考研复试-软件工程
- android 拍照 比例,Everest
- 被误读的丰田生产方式
- Input Method of Win32 System
- 从‘0’开始完成一个阻抗分析仪(初篇——原理讲解)
- 职称计算机考试报名交费好,不去考了,可以申请退款么?如果可以的话,怎么退?,2021年初级会计报名缴费问题汇总,不想考可以退费吗?...
- 执行修订 第十五篇 墨客区块链(MOAC BlockChain) 搭建自己的第一个DAPP
- 怎么成为高新技术企业?好处有哪些?