zoukankan      html  css  js  c++  java
  • 学习笔记图

    图的定义

      图(graph)是一种网状数据结构,图是由非空的顶点集合和一个描述顶点之间关系的集合组成。

      其形式化定义为二元组:

        Graph = (V,E)

      其中:

        V 是具有相同特性的数据元素的集合,V 中的数据元素通常称为 顶点(Vertex),

        E是连接V中两个不同顶点(顶点对)的边的有限集合。

        E = { < u , v > | P (u , v) ∩ (u,v ∈ V)}

    有向图和无向图

      

      在一个图中,如果任意两个顶点构成的偶对 (u , v) ∈ E 是无序的,即顶点之间的连线是没有方向的,则称该图为无向图(Undigrpah)。

      在一个图中,如果任意两个顶点构成的偶对<u , v> ∈ E是有序的,即顶点之间的连线是有方向的,则称该图为有向图(Digrpah)。

      有向图顶点之间的连线称为弧。弧有弧头和弧尾区别。

        注意:无向边用“()”,而有向边用“< >”表示。

      

    图的存储

      邻接矩阵 : 二维数组 顺序结构

        

        其中,wij表示边 (u , v) 或弧<u , v>上的权值;∞表示一个计算机允许的、大于所有边上权值的数。

        

      邻接表:链表 链式存储结构

    图的遍历

      深度优先遍历( DFS depth-first search ):

        类似于树的先根遍历,是树的先根遍历的推广(可以采用递归和借助栈的非递归方式实现)。

      广度优先遍历( BFS breadth-first search):

        类似于树的层次遍历,是树的按层次遍历的推广(借助队列 非递归方式实现)。

    最短路径

      权值最小的最短路径:迪杰斯特拉算法(Dijkstra)

      




    作者:殇央 © 转载请注明出处。

    -------------------------------------------

    如果有错误或者更优化的解决方案,欢迎大家在评论区留言探讨。

    也可以给我的个人公众号私信留言。

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

查看全文
  • 相关阅读:
    5G网络逐渐普及TSINGSEE青犀视频云边端架构网页视频实时互动直播系统又将如何发展?
    【开发记录】TSINGSEE青犀视频云边端架构Visual Studio 2017自建WebRTC中peerconnection_client编译报无法解析错误
    安防视频云服务平台EasyCVR视频智能分析系统运行控制台报404错误如何排查?
    一对一或一对多音视频通话会议系统可以通过哪些方式实现?
    TSINGSEE青犀视频云边端视频智能分析平台开发VMware下安装Ubuntu系统后无法安装VMwaretools问题解决
    最简单的Windows套接字(Socket)例子(源码,实例)
    KJAVA虚拟机Hack笔记实现MIDP的SLAVE事件模型
    系统程序员成长计划你的数据放在哪里(下)
    使用new实现realloc操作
    KJava虚拟机hack笔记基于GTK的移植
  • 原文地址:https://www.cnblogs.com/shangyang/p/10542499.html
  • Copyright © 2011-2022 走看看