图论里面求最小生成树的算法(如克鲁斯卡尔),怎样解决大数据量的计算与存储效率问题
问题的关键点其实在排序上面,可以根据你的边的权值的特点分成很多段,每段分别排序。如果值很密集,根据值把边取出来即可,都不用排了。
■网友
数据量:使用 Prim 算法,对于随机图而言,堆内的点数不会超过内存范围。如果使用 Kruskal 算法,可以调用外部排序算法,也可以在一定范围内解决存储问题。效率问题:严格最小生成树下界即为 【图论里面求最小生成树的算法(如克鲁斯卡尔),怎样解决大数据量的计算与存储效率问题】
,你可以使用一些非严格的随机、调整算法。
■网友
mapreduce大法好(Lattanzi 2011)。G=(V,E)Map: 把所有边hash成k份(为了分得均匀),E1到EkReduce:每一份得到一个树MSTi,这一份的其他边可以删掉合并剩下的边再分成多份,得到多个树,再合并...直到整个图里没有环,结束。至于得到树MST的过程,也可以不用Kruskal,有种叫paralleling MST的办法,删掉环里最大的边,形成新的环,继续删最大边...上面两个结合一下能跑O(logN)
■网友
排序nlogn的哪来的几何级数......你的PC配置怎么样,边全存下来也就几个G的内存,当然你也可以外存排序这个没问题合并的时候用并查集,要保证性能这个肯定要放内存,每个节点用32为整数也就400M的内存需求吧
推荐阅读
- 出生■扬州最小病例!宝宝出生24小时就接受外科手术
- 车车人|为什么老司机进隧道开车时都不愿走右侧车道?原来里面大有学问!
- 在英雄联盟里面跟别人solo有啥技巧吗一对一的那种〒_〒?
- 为啥滴滴和快的的专车业务在叫车的产品流程里面没有参考uber的派单的模式而是继续采用司机抢单的模式
- 男子眼睛不适一年多,去医院一看,里面竟有一小截树枝!
- 电池|最近上市的新车里面居然有超多SUV?最帅的都在这了
- 汽车市场|你还在看不起国产车:自主品牌与国际品牌差距为十年来最小
- 请问这段代码是啥意思,从一个仿造网站上下载的软件里面的,对电脑有危害吗
- 胖哥汽车|火花塞只坏了1个,修车工却全部换新,里面到底有什么猫腻?
- ucloud售前架构师怎样在销售团队里面的职责主要是啥
