美文网首页
聊一聊数据结构中的图

聊一聊数据结构中的图

作者: 风的低语 | 来源:发表于2018-07-27 22:33 被阅读20次

图对现实世界问题的建模起着非常重要的作用。例如,可以使用图寻找两座城市之间最短距离的问题进行建模,其中顶点代表城市,边代表两座相邻城市之间的路径和距离。找寻两座城市之间的最短距离的问题就简化为寻找图中两个顶点之间最短路径的问题。

先聊聊哥尼斯堡的七孔桥问题,位于普鲁士的哥尼斯(现俄罗斯的加里宁格勒)被普雷格河分开,该河流经两座岛,这座城市和岛由七座桥相连,问题在于,如何经过每座桥一次且只经过一次,然后返回起点?
首先通过删除所有的街道来提取出哥尼斯堡的地图,然后,将每一块陆地用一个点来代替,这个点称为顶点或者结点,并且将每一座桥用一条线来替换,这条线称为边,这种有顶点和边的称为图。
当看见图的时候,我们会询问是否存在一条从任意顶点出发的路径,这条路径遍历所有的边一次且只有一次,然后返回起始顶点。欧拉证明了这种路径存在的条件是,每个顶点必须拥有偶数条边。因此,哥尼斯堡的七孔桥问题没有解决的方法。
一个图包含了非空的顶点、结点或者点,以及一个连接顶点的边的集合。
图可以是有向的,也可以是无向的。
在有向图中,每条边都有一个方向,表明可以沿着这条边将一个顶点移动到另一个顶点。可以使用有向图来对父/子之间的关系进行建模,其中从顶点A到B的边表示A是B的父亲。
在无向图中,可以在顶点之间双向移动他们。

相关文章

  • 聊一聊数据结构中的图

    图对现实世界问题的建模起着非常重要的作用。例如,可以使用图寻找两座城市之间最短距离的问题进行建模,其中顶点代表城市...

  • 聊一聊数据结构中加权图

    加权图的类型有两种: 顶点加权和边加权。在顶点加权图中,每个顶点都分配了一个权值。在边加权图中,每条边都分配一个权...

  • 聊一聊全景图

    欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ 作者:李洋 前段时间学习了ThreeJS项目里边关于全景...

  • 聊一聊Redis之数据结构

    基本数据结构 简单动态字符串 Redis中的字符串使用“简单动态字符串”(SDS)表示,无论是字符串值还是键底层都...

  • 聊一聊Android中的Context

    一、Context 是什么 Context 是应用程序上下文,它提供了应用程序的全局的一些信息。 Context是...

  • 聊一聊记忆中的老师

    突然想起小学作文,长大后你想成为什么。 那个时候的答案是——老师。 会有这样一个想法,原因有三: 1、遇到的小学老...

  • 聊一聊职场中的回复

    工作中大家应该都遇到过这么一个场景:领导或者同事在微信群或者会议上发表一个观点或者通知的时候,后面总会有人回复“收...

  • 聊一聊Spring中的代理

    代理的概念本文就不细说了,相信网上的文章很多,动态代理,静态代理,JDKProxy和CGLIB,他们的使用区别等。...

  • 聊一聊 Leanback 中的 HorizontalGridVi

      Google 的 Leanback 有其固定的风格,但国内的UI往往不会按照 Leanback 的风格进行设计...

  • 聊一聊 Javascript 中的 AST

    什么是抽象语法树(Abstract Syntax Tree ,AST)? 百度百科是这么解释的: 在计算机科学中,...

网友评论

      本文标题:聊一聊数据结构中的图

      本文链接:https://www.haomeiwen.com/subject/ugknmftx.html