graphx解决图中心

#四年前开始接触图计算,当时很多想法都不成熟,属于学习摸索阶段,而本章写于2016年9月,正处于那段时期。算是对图中心问题的探索性的思考,当然方法并不正确。正确的做法,可以参考基于HyperLogLog的HyperAnf算法。有感于当时兴奋的求知欲状态,所以保留下来,不做删除。
请大家绕过即可

#图的中心点
所谓图的中心点,就是到其他点的距离之和最小的点,可以将它近似看做图。如果将该点看作根节点,那么各层顶点到根节点的距离之和也是最小的。
#示例
下图的中心点是哪个呢?

中心点

图中各点到其他点距离之和分别是{1-> 14, 2->14, 3->9, 4->8 , 5->13, 6->12, 7->12}。很明显到其他距离最小的点是4(距离之和为8),所以4是该图的中心点。
以4为根节点形成的最小生成树图为:

c2

#复杂度分析
计算图的中心点,需要计算每个点到其他点的距离之和,然后选出距离之和最小的点。
也可以理解为先求图中任意两点之间的距离,然后统计各点到其他点的距离之和。
因此算法的耗时主要在求任意两点之间距离,该问题的解决方法已经很完善,也有许多算法可以完成,如:

  1. 简单的运行n次单源最短路径算法, O(V*单源最短路径算法的时间复杂度)
  2. <
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值