【数据结构必备基础知识】之图的基本概念详解

47 篇文章 162 订阅
45 篇文章 26 订阅

一、前言

从今天开始就给大家分享有关于图的概念和代码啦,不知道大家有没有看够树的相关内容呢?以后还会慢慢给大家再分享的,代码要一遍一遍过,一轮一轮学习。第一轮树就先到这里,等第二轮还会给大家分享的。

图应该是数据结构中处于霸王地位的一部分了,图会涉及到图论的相关知识,咱们现在还涉及不到,等到以后分享数学基础,讲离散数学的时候,会给大家分享有关图论的内容。

为什么称图是霸王地位呢?因为图应该是数据结构中最难的:

1.图状结构是我们研究的结构里面最复杂的结构

我们在讲解数据的逻辑结构时给大家讲到数据结构有如下四个:集合,线性结构,树形结构,图状结构或网状结构。集合只有同属于一个集合;线性结构存在一对一的关系;树形结构存在一对多的关系;图状结构存在多对多的关系

2.图的相关关系非常复杂,相关概念非常多

图有有向图,有无向图;有简单图,有多重图;有连通图,非连通图等等等等。如果把图画出来,我们人去看一个图比较简单,我们会有各种各样去分析这个图的方法,计算机不同,他们没有人这么强大的大脑,很多对于图的分析很死板,需要我们把图分析好了再做处理(如果人工智能发展比较好的话,这个问题可能会解决)。

但是图又很重要,不管是地图,人物关系等,把每个人或者每个地方看作一个点,其他的点都会与之有上千万的联系。所有就都有及其复杂的网络,不管是路径规划,导航提醒还是警察在断案,其实本质上都是图的应用。

所以,在这里把图的相关定义给大家分享一下,方便以后的学习。

二、图的定义

图G由顶点集V和边集E组成,记为G=(V,E),其中V(G)表示图G中顶点的有限非空集;E(G)表示图G中顶点之间的关系(边)的集合。

注意:线性表可以是空表,树可以是空树,图不可以是空图,图可以没有边,但是至少要有一个顶点

1.有向图

若E是有向边(简称弧)的有限集合时,则G为有向图。弧是顶点的有序对,记为<v,w>,其中 v,w 是顶点,v 是弧尾,w 是弧头。称为从顶点v到顶点w的弧。

有向图

 如上图所示G可表示为:

G=(V,E)
V={1,2,3}
E={<1,2>, <2,1>, <2,3>}

2.无向图

若E是无向边(简称边)的有限集合时,则G为无向图。边是顶点的无序对,记为 (v,w) 或(w,v) ,且有 (v,w) =(w,v) 。其中 v,w 是顶点。

无向图

如上图所示,无向图G可表示为:

G=(V, E)

V={1,2,3,4}

E={(1,2), (1,3), (1,4), (2,3), (2,4), (3,4)}

3.简单图

简单图满足以下两条内容:

1)不存在重复边

2)不存在顶点到自身的边

所以上面的有向图和无向图都是简单图。与简单图相对的是多重图,即:两个结点直接边数多于一条,又允许顶点通过同一条边与自己关联。但是我们在数据结构中仅讨论简单图,所以多重图不单独讲解啦。

4.完全图

无向图中任意两点之间都存在边,称为无向完全图;如无向图中的示例就是完全图。

有向图中任意两点之间都存在方向向反的两条弧,称为有向完全图;如示例中的图就不是完全图,但如果没有顶点3和指向顶点3 的边,就是一个完全图。即下图是一个完全图。

有向完全图

5.子图

若有两个图G=(V,E),G1=(V1,E2),若V1是V的子集且E2是E的子集,称G1是G的子图。

如上面的有向完全图是有向图的一个子图。

6.连通、连通图、连通分量

在无向图中,两顶点有路径存在,就称为连通的。若图中任意两顶点都连通,同此图为连通图。无向图中的极大连通子图称为连通分量。

以下面两个图为例,下面的图是上面的图的连通分量,并且下面的图是连通图。上面图中I与J也是连通的。

 

上图的一个连通分量

7.强连通图、强连通分量

在有向图中,两顶点两个方向都有路径,两顶点称为强连通。若任一顶点都是强连通的,称为强连通。有向图中极大强连通子图为有向图的强连通分量。

以下面的图为例:下图就是一个强连通图,并且是下面图的强连通分量。

强连通图

 

8.生成树和生成森林

连通图的生成树是包含图中全部顶点的一个极小连通子图,若图中有n个顶点,则生成树有n-1条边。所以对于生成树而言,若砍去一条边,就会变成非连通图。

在非连通图中,连通分量的生成树构成了非连通图的生成森林。

无向图的一个生成树

9.顶点的度、入度和出度

顶点的度为以该顶点为一个端点的边的数目。

对于无向图,顶点的边数为度,度数之和是顶点边数的两倍

对于有向图,入度是以顶点为终点,出度相反。有向图的全部顶点入度之和等于出度之和且等于边数。顶点的度等于入度与出度之和

注意:入度与出度是针对有向图来说的

10.边的权和网

图中每条边上标有某种含义的数值,该数值称为该边的权值。这种图称为带树图,也称作网。

11.路径、路径长度和回路

两顶点之间的路径指顶点之间经过的顶点序列,经过路径上边的数目称为路径长度。若有n个顶点,且边数大于n-1,此图一定有环。

12.简单路径、简单回路

顶点不重复出现的路径称为简单路径。

除第一个顶点和最后一个顶点外,其余顶点不重复出现的回路称为简单回路。

13.距离

若两顶点存在路径,其中最短路径长度为距离。

14.有向树

有一个顶点的入度为0,其余顶点的入度均为1的有向图称作有向树。如下图:

有向树

 

图的概念很重要,后面会经常用到,希望大家能够牢记于心,最好的记忆方式就是不断练习,不断重复。

  • 50
    点赞
  • 224
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
一、资源详解 实验报告:通过实际操作与数据记录,让您深入理解计算机内部的工作原理。每份实验报告都详细记录了实验步骤、结果及分析,助您巩固知识点。 学习笔记:由资深学者精心整理的学习笔记,重点突出,为您梳理课程脉络,把握核心内容。 复习资料与试卷:涵盖了各类复习资料和历年试卷,助您备战考试,查漏补缺,提高应试能力。 作业答案:提供完整的作业答案及解析,让您在完成课后作业时更有信心,确保理解每一个知识点。 一二、计算机组成原理:从基础到进阶,全面突破的必备资源 在信息爆炸的时代,计算机组成原理作为计算机科学的核心课程,显得尤为重要。为了帮助广大学子更好地掌握这一关键领域,我们特地整理了这一系列与计算机组成原理相关的资源,助力您的学术旅程。 三、适用场景广泛 无论是期末考试冲刺、计算机组成原理实验报告作业、还是复习题、试题、考研资料等需求,这些资源都能满足您的要求。全面覆盖理论要点与实践操作,让您在学习和备考过程中游刃有余。 四、使用建议 系统学习:建议按照章节顺序进行系统学习,结合实验报告进行实践操作,以加深理解。 备考策略:利用复习资料与试卷资源,制定有效的备考计划,提高考试通过率。 持续反馈与改进:根据作业答案进行自我评估,找出薄弱环节,及时调整学习策略。 五、版权与安全提示 尊重知识产权:在使用这些资源时,请尊重原作者的权益,遵守版权法规。 安全使用:确保在使用过程中不侵犯他人权益,避免任何形式的学术不端行为。 感谢您选择我们的计算机组成原理资源库!让我们一起深入探索计算机的奥秘,用知识武装自己,开启精彩的学术之旅!
公司组织培训,木遥原创1个月编写的培训教案资料,极为详细,入门必备。 目录如下 一、 GIS的概论、应用 4 1、什么是GIS 4 2、GIS的应用 5 二、 GIS的标准、体系结构及平台软件 13 1、GIS标准: OGC 13 2、GIS的体系结构 13 3、常见GIS平台 14 (1)ArcGIS 14 (2)SuperMap超 15 (3)开源GIS 16 (4)公司GIS技术架构建议 17 三、GIS坐标系详解 17 1、地球空间模型 18 2、地理坐标系 19 (1)关于地心坐标系和参心坐标系 20 (2)关于分秒与十进制值 20 3、投影坐标系 20 (1)墨卡托Mercator投影 22 (2)高斯-克吕格 Gauss-Kruger投影 23 4、国际坐标系标准 25 (1)WGS84坐标系 25 (2)Web Mercator投影 25 5、国内坐标系标准 25 (1)1985国家高程基准 25 (2)北京54坐标系(BJZ54) 26 (3)西安80坐标系(GDZ80) 26 (4)2000国家大地坐标系(CGCS2000) 26 (5)Web地所采用的坐标系 27 6、经纬网与方里网 27 (1)经纬网 27 (2)方里网 27 7、地比例尺、分辨率 28 四、地层概念 28 1、层中数据的分类:矢量数据与栅格数据 29 (1)矢量数据 29 (2)栅格数据 29 (3)矢量栅格数据的比较 29 2、切片(瓦片)地的概念 30 3、WebGIS的地结构 31 五、地理要素的概念 32 1、要素的数据分类 33 (1)点 33 (2)线 33 (3)面 34 (4)要素之间的拓扑关系 34 2、要素的构成 34 (1)坐标信息 geometry 34 (2)样式信息 style 34 (3)属性信息 attributes 35 六、GIS数据的来源 36 1、底数据来源 36 (1)官方地 36 (2)实地外采 37 (3)航片卫片制作 38 (4)地数据加工制作过程 39 2. POI数据(信息点数据) 39 (1)通过整合GPS的摄像机扫街拍摄 40 (2)手持含GPS的智能设备(如智能手机)进行采集 40 (3)地址反向编译 40 (4)互联网或者企业获取 40 3. 其他数据层或数据 41 (1)交通拥堵数据 44 (2)三维数据 44 (3)假三维数据(那种不能旋转的45三维俯视) 44 (4)街景 44 4、总结 44 七、走进三维GIS 45 1、主要的三维GIS平台及软件 45 (1)Skyline 45 (2)ArcGIS旗下 ArcGlobe和ArcScene 46 (3)GoogleEarth 47 2、三维GIS的瓶颈 47 八、走进互联网地 48 1、火星坐标系(GCJ-02) 49 2、各互联网地所用的坐标系 49 3、各类地服务介绍 49 (1)谷歌google地 50 (2)微软bing地 50 (3)天地 50 (4)高德地 51 (5)百 51 (6)腾讯地 51 (7)吧地 52 (8)E都市 52 (9)搜狗地 52 4、行业现状 52 九、GIS的发展 53 1、回顾GIS的发展历程 53 2、GIS的发展 54
一、资源详解 实验报告:通过实际操作与数据记录,让您深入理解计算机内部的工作原理。每份实验报告都详细记录了实验步骤、结果及分析,助您巩固知识点。 学习笔记:由资深学者精心整理的学习笔记,重点突出,为您梳理课程脉络,把握核心内容。 复习资料与试卷:涵盖了各类复习资料和历年试卷,助您备战考试,查漏补缺,提高应试能力。 作业答案:提供完整的作业答案及解析,让您在完成课后作业时更有信心,确保理解每一个知识点。 一二、计算机组成原理:从基础到进阶,全面突破的必备资源 在信息爆炸的时代,计算机组成原理作为计算机科学的核心课程,显得尤为重要。为了帮助广大学子更好地掌握这一关键领域,我们特地整理了这一系列与计算机组成原理相关的资源,助力您的学术旅程。 三、适用场景广泛 无论是期末考试冲刺、计算机组成原理实验报告作业、还是复习题、试题、考研资料等需求,这些资源都能满足您的要求。全面覆盖理论要点与实践操作,让您在学习和备考过程中游刃有余。 四、使用建议 系统学习:建议按照章节顺序进行系统学习,结合实验报告进行实践操作,以加深理解。 备考策略:利用复习资料与试卷资源,制定有效的备考计划,提高考试通过率。 持续反馈与改进:根据作业答案进行自我评估,找出薄弱环节,及时调整学习策略。 五、版权与安全提示 尊重知识产权:在使用这些资源时,请尊重原作者的权益,遵守版权法规。 安全使用:确保在使用过程中不侵犯他人权益,避免任何形式的学术不端行为。 感谢您选择我们的计算机组成原理资源库!让我们一起深入探索计算机的奥秘,用知识武装自己,开启精彩的学术之旅!
数据结构是计算机存储、组织数据的方式,算法是解决问题的步骤和方法。数据结构和算法是计算机科学中最基础、最重要的两个领域之一。掌握数据结构和算法可以帮助我们更好地理解计算机科学的本质,提高编程能力,解决实际问题。 常见的数据结构包括数组、链表、栈、队列、树、等。常见的算法包括排序、查找、递归、分治、动态规划等。 在学习数据结构和算法时,需要掌握以下知识点: 1. 时间复杂和空间复杂:用来衡量算法的效率和资源消耗。 2. 数组:一种线性数据结构,用来存储一组相同类型的元素。 3. 链表:一种线性数据结构,用来存储一组元素,每个元素包含一个指向下一个元素的指针。 4. 栈:一种后进先出(LIFO)的数据结构,用来存储一组元素。 5. 队列:一种先进先出(FIFO)的数据结构,用来存储一组元素。 6. 树:一种非线性数据结构,由节点和边组成,每个节点可以有多个子节点。 7. :一种非线性数据结构,由节点和边组成,每个节点可以有多个相邻节点。 8. 排序算法:用来将一组元素按照一定的顺序排列的算法,包括冒泡排序、选择排序、插入排序、快速排序、归并排序等。 9. 查找算法:用来在一组元素中查找指定元素的算法,包括线性查找、二分查找、哈希查找等。 10. 递归算法:一种通过调用自身来解决问题的算法。 11. 分治算法:一种将问题分解成多个子问题来解决的算法。 12. 动态规划算法:一种通过将问题分解成多个子问题来解决的算法,通常用于求解最优化问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值