图的定义与术语

让编程改变世界

Change the world by program


  在前边讲解的线性表中,每个元素之间只有一个直接前驱和一个直接后继,在树形结构中,数据元素之间是层次关系,并且每一层上的数据元素可能和下一层中多个元素相关,但只能和上一层中一个元素相关。   但这仅仅都只是一对一,一对多的简单模型,如果要研究如人与人之间关系就非常复杂了。 万恶图为首,前边可能有些童鞋会感觉树的术语好多,可来到了图这章节,你才知道什么叫做真正的术语多!

图的定义

图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。   对于图的定义,我们需要明确几个注意的地方:

  1. 线性表中我们把数据元素叫元素,树中叫结点,在图中数据元素我们则称之为顶点(Vertex)。
  2. 线性表可以没有数据元素,称为空表,树中可以没有结点,叫做空树,而图结构在咱国内大部分的教材中强调顶点集合V要有穷非空。
  3. 线性表中,相邻的数据元素之间具有线性关系,树结构中,相邻两层的结点具有层次关系,而图结构中,任意两个顶点之间都可能有关系,顶点之间的逻辑关系用边来表示,边集可以是空的。

图的各种奇葩定义

无向边:若顶点Vi到Vj之间的边没有方向,则称这条边为无向边(Edge),用无序偶(Vi,Vj)来表示。

上图G1是一个无向图,G1={V1,E1},其中

  • V1={A,B,C,D},
  • E1={(A,B),(B,C),(C,D),(D,A),(A,C)}

有向边:若从顶点Vi到Vj的边有方向,则称这条边为有向边,也成为弧(Arc),用有序偶<Vi,Vj>来表示,Vi称为弧尾,Vj称为弧头。

上图G2是一个无向图,G2={V2,E2},其中

  • V2={A,B,C,D},
  • E2={<B,A>,<B,C>,<C,A>,<A,D>}

简单图:在图结构中,若不存在顶点到其自身的边,且同一条边不重复出现,则称这样的图为简单图。

以下两个则不属于简单图:

无向完全图:在无向图中,如果任意两个顶点之间都存在边,则称该图为无向完全图。含有n个顶点的无向完全图有n*(n-1)/2条边。

有向完全图:在有向图中,如果任意两个顶点之间都存在方向互为相反的两条弧,则称该图为有向完全图。含有n个顶点的有向完全图有n*(n-1)条边。

稀疏图和稠密图:这里的稀疏和稠密是模糊的概念,都是相对而言的,通常认为边或弧数小于n*logn(n是顶点的个数)的图称为稀疏图,反之称为稠密图。

有些图的边或弧带有与它相关的数字,这种与图的边或弧相关的数叫做权(Weight),带权的图通常称为网(Network)。

  假设有两个图G1=(V1,E1)和G2=(V2,E2),如果V2⊆V1,E2⊆E1,则称G2为G1的子图(Subgraph)。 [buy] 获得所有教学视频、课件、源代码等资源打包 [/buy] [Downlink href='http://kuai.xunlei.com/d/BdsUAwJ47wDRc3lRd20']视频下载[/Downlink]

转载于:https://www.cnblogs.com/LoveFishC/archive/2013/04/26/3847305.html

图的定义与术语 - 数据结构和算法54相关推荐

  1. 【图论】图的定义和术语

    本文为图论总结,介绍基本的图的定义和术语及简单定理. 基本术语 序列中顶点不重复出现的路径称为简单路径. 顶点 v v v 的所有相邻顶点集合记作 N ( v ) N(v) N(v). 将度为 0 的 ...

  2. 7.1图的定义和术语

    图(Graph):是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合. 线性表中我们把元素叫元素,树中叫结点,在途中数 ...

  3. 数据结构与算法基础-青岛大学-王卓

    数据结构与算法基础(青岛大学-王卓)_哔哩哔哩_bilibili 文章目录: 第一章:数据结构的基本概念 1.逻辑结构的种类 2.存储结构的种类 ​3.抽象数据类型的形式定义 4.Complex抽象书 ...

  4. 数据结构与算法笔记(青岛大学王卓老师视频)

    写在前面的话: 因为在学习数据结构之前,学习过一年的算法,所以有一些基础,一些我觉得 没必要的代码或知识就没写上,记得多是一些知识点,写的可能对于别人来说 很难接受,望谅解.我学习算法是在Acwing ...

  5. java算法 例 百度云_Java版数据结构与算法(20集版)视频教程百度云下载

    课程目录: 1 Y) C+ M. ~9 S' r7 i  J# _数据结构-Java版(20集)7 {2 h5 w' i9 C' }& }$ J |____第20讲 - 图的最小生成树.avi ...

  6. 《大话数据结构》1、2数据结构、算法

    大话数据结构 大话设计模式 head first设计模式 Java核心技术 卷1 深入理解Java虚拟机(JVM高级特性与最佳实践) 图解HTTP 大话数据结构 数据结构介绍, 算法推导大O阶的方法, ...

  7. c语言程序设计教程高佳琴主编答案,数据结构与算法应用教程.ppt

    <数据结构与算法应用教程.ppt>由会员分享,可在线阅读,更多相关<数据结构与算法应用教程.ppt(41页珍藏版)>请在人人文库网上搜索. 1.书名:数据结构与算法应用教程 I ...

  8. 数据结构与算法基础——重要知识点截图【青岛大学-王卓版】

    文章目录: 第一章:数据结构的基本概念 1.逻辑结构的种类 2.存储结构的种类 ​3.抽象数据类型的形式定义 4.Complex抽象书籍类型中的基本操作 5.概念小结 6.时间复杂度 7.空间复杂度 ...

  9. 数据结构与算法基础(青岛大学——王卓) note

    数据结构 第一章:绪论 一:基本概念和术语 1.逻辑结构 逻辑结构的种类 2.存储结构 存储结构的种类 3.逻辑结构与存储结构的关系 4.数据类型和抽象数据类型 5.小结 二:抽象数据类型的表示与实现 ...

最新文章

  1. 官宣!清华大学要搬迁!
  2. 在Spring3中,配置DataSource的方法有五种
  3. linux上面的sz,rz命令与ssh的配合
  4. pythonnamedtuple定义类型_详解Python中namedtuple的使用
  5. 猪肉上的红章和蓝章有啥不同?| 今日趣图
  6. 混合多云架构_使用混合多云每个人都应避免的3个陷阱(第2部分)
  7. php数据库创建文件失败怎么回事,安装zblogPHP提示“创建c_option.php失败”解决方法...
  8. pc计算机中ram的编址单位,字母编址
  9. 什么是实验室人员比对人员_中实在线——程老师小课堂 实验室人员管理技巧...
  10. springboot整合es启动报错的问题
  11. 【Qt学习笔记】4.事件处理
  12. error: expected unqualified-id extern C {
  13. 基于adaboost算法的人脸检测_基于噪声检测的图像去噪算法
  14. C语言实现自制图片文件合成器
  15. 电信光猫 友华PT921G 研究
  16. 2. webpack 处理 css less sass scss styl 资源
  17. 实现跨word文档的格式刷,两个word间格式刷
  18. win10重装win7后usb键盘鼠标都失灵
  19. VM使用-pin针同心度检测
  20. Eureka注册中心上服务老是自动挂掉相关问题总结

热门文章

  1. 浅谈三种特殊进程:孤儿进程,僵尸进程和守护进程
  2. Python学习之路20-数据模型
  3. navicat 批量插入 测试数据
  4. java单例模式之线程安全问题
  5. Activiti配置实例以及Spring集成配置
  6. openssh-在win7上的搭建
  7. c# 扩展方法奇思妙用高级篇五:ToString(string format) 扩展
  8. 园区网VLAN应用实例
  9. linux mc服务器 mod_如何在linux搭建MC服务器
  10. Flask 第三方组件之 script