前言

边介数是运用GN算法求解的关键,通过不断删除边介数最高的边,才能最终生成分裂树。
那么,边介数怎么计算呢?
相信点进我这篇文的朋友们都是看过边介数计算公式的。
那么废话不多说,我直接上图解释吧。

流程

首先假设这里有个图,m个节点,n条边,我们先选节点s作为源节点,以s为源对图进行搜索,画出s到各个节点的最短路径树,假设最短路径树呈这个亚子:

然后我们把所有最邻近叶子结点的那条边标上1,再将其他边标上所有最邻近他的边之和+1,然后就成了这个样子:

这样,我们就有了在这个点作为源节点时的各边单次边介数。然后再换一个节点作为边节点,就有了如下图:

本次计算结果我标注了绿色,然后再按照这个方法,当遍历完所有节点(即所有节点都做过一次边节点)后,再将各边上每次求得的单次边介数累计求和,得到的就是最终该边边介数。

解释

从边介数定义开始讲吧。
大家都知道,边介数定义为从源节点到各节点最短路径中经过该边的路径数,那么就再回到先前的图:

在这张图中,源节点S到各节点都只有一条最短路径,那么我就借着这张图来解释一下:

可以看到,图中这条橙色的边单次边介数为2,而经过它的最短路径有两条。
如果这样还不够清晰,那么——

图中蓝色的边单次边介数为6,经过它的最短路径有6条,足够清楚了吧。

补充

先前有人问过我这个问题,他给我画了这么个图:

他在我给的示例图上添了这么一笔,然后问我这样怎么计算边介数呢?
自然是照常计算啊,添上这条边又不会造成其他边的变动(在还是S作为源节点的情况下),只是这条边上可以标个1罢了。
此外,还有一种情况,就是在这个连通图外还有单独两个连通节点的:

具体我就不详说了,直接看计算过程吧:

不同颜色代表将不同节点作为源节点时的计算结果。

【复杂网络社团发现】GN算法边介数详解相关推荐

  1. gn算法java_R语言构建蛋白质网络并实现GN算法

    R语言构建蛋白质网络并实现GN算法 1.蛋白质网络的构建 我们使用与人类HIV相关的蛋白质互作数据hunam-HIV PPI.csv来构建这个蛋白质互作网络. 在R中,我们可以从存储在R环境外部的文件 ...

  2. 操作系统:基于页面置换算法的缓存原理详解(下)

    概述: 在上一篇<操作系统:基于页面置换算法的缓存原理详解(上)>中,我们主要阐述了FIFO.LRU和Clock页面置换算法.接着上一篇说到的,本文也有三个核心算法要讲解.分别是LFU(L ...

  3. python实验原理_Python实现蒙特卡洛算法小实验过程详解

    蒙特卡洛算法思想 蒙特卡洛(Monte Carlo)法是一类随机算法的统称,提出者是大名鼎鼎的数学家冯·诺伊曼,他在20世纪40年代中期用驰名世界的赌城-摩纳哥的蒙特卡洛来命名这种方法. 通俗的解释一 ...

  4. 图解机器学习算法(6) | 决策树模型详解(机器学习通关指南·完结)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/34 本文地址:https://www.showmeai.tech/article-d ...

  5. KMP算法之next数组详解

    KMP算法之next数组详解 KMP算法实现原理 KMP算法是一种非常高效的字符串匹配算法,下面我们来讲解一下KMP算如何高效的实现字符串匹配.我们假设如下主串和模式串: int i;//i表示主串的 ...

  6. 算法经典“钓鱼”问题详解 基于贪心算法 C语言描述

    算法经典"钓鱼"问题详解 基于贪心算法 初始条件 在一条水平路边,有 n 2 ≤ n ≤ 25个钓鱼池,从左到右编号为1.2.3.--.n.小明有H1 ≤ H ≤ 16个小时的空余 ...

  7. 解决网络时断时续:Nvidia-NFORCE-nvnet.ko网卡驱动安装详解

    解决网络时断时续:Nvidia-NFORCE-nvnet.ko网卡驱动安装详解 作者: spyer 高级会员(IPLogged) 日期: 2006-10-23 13:57:11 前天在ASUS-A8N ...

  8. 希尔排序基础java代码_java 算法之希尔排序详解及实现代码

    摘要:这篇Java开发技术栏目下的"java 算法之希尔排序详解及实现代码",介绍的技术点是"希尔排序详解.实现代码.希尔排序.Java.实现.代码",希望对大 ...

  9. Stale branches 设置_Mac OS 网络设置教程 wifi设置与宽带设置详解

    虽然所有设备连接无线网络的步骤都相差无几,但是Mac与windows系统还是不相同的,那么,苹果Mac怎么连接无线网络呢?针对此问题,本文就为大家介绍Mac网络的设置教程,有兴趣的朋友们可以了解下. ...

最新文章

  1. 单例模式的标准写法、注意事项、作用及测试
  2. spss数据_spss数据分析软件
  3. springboot 不同环境不同的配置
  4. 洛谷 - P4016 负载平衡问题(最小费用最大流)
  5. 【测试点三、四、五分析】1032 Sharing (25 分)_28行代码AC
  6. html css3模拟心的跳动
  7. html5游戏制作入门系列教程(二)
  8. ActiveMQ消息队列的使用
  9. selenium IDE的基本命令
  10. html进阶css(5)
  11. java读取gpx文件,读取GPX文件+optpars的简单python脚本
  12. 中位数技巧(推理+证明)
  13. IT运维审计系统是什么?有推荐的吗?
  14. 程序员的“九阳神功”——设计模式
  15. FireFox-background
  16. Python数据分析与可视化概述(内容全面 附PPT)
  17. 360度全景效果图制作步骤是什么?
  18. 15-面向对象的程序设计--no
  19. SQL数据库查询语句
  20. 清除pycharm残留文件

热门文章

  1. 出现WARNING:EES turn off. Please turn on EES and try again和linux10.4修改ip地址
  2. pid文件不存在解决方法
  3. Android WebRTC+SRS/ZLM视频通话(5):Android使用WebRTC从SRS/ZLMediaKit拉流
  4. SwiftUI——推送通知(Notifications)二三事
  5. windows10密钥激活失败 0x80072efe
  6. linux 永久修改pending signals的值
  7. R包安装时安装程序包****时退出的状态不是0,或者版本不适的一种解决方法。
  8. 利用Python批量下载学生PDF教材
  9. QML完全模仿飞书日程界面(二)日(一天)的部分
  10. 参与GlobalPlatform标准体系建设 百度函谷成就极致安全