使用mapred寻找图中的三角形
来源:互联网 发布:淘宝待收货p图教程 编辑:程序博客网 时间:2024/06/10 08:57
本题是来自于:http://caibinbupt.iteye.com/blog/354316
题目是这样的:
有向图,输入是所有的边,如下图的输入是<A, B>,<A, C>,<A, D>,<A, E>,<B, C>,<B, F>,<E, D>和<C, G>,输出是图中所有这样三角形<x, <y,z>>,它的边是<x,y>,<x,z>和<y,z>。下面的图输出是<A, <B,C>>,<A, <E,D>>。用MapReduce做,不要用传统方法啦(比方说把边倒到数据库里,用SQL语句找)。
下面给出对应的解决方案以及源代码,解决方案和源代码来自于:hadoop解决一个图相关的题
解决方案:
要点就是中间结果需要附加一些信息,保证在解的过程中,上下文的信息是充分的。利用这种方法,我们还可以用MapReduce做图上的宽度优先搜索。
但是该博文中并没有给出算法的详细解说,所以我在这里将我的理解思路记录下来:
整个解决方案由两个mapred程序组成:
1)第一个mapred程序:map输入:图的所有边,输出:以边的起点作为key输出
red输入:具有相同起点的边,输出:从该起点能够到达的所有的其他点
red输入:key在小于等于2的步长下能够到达的所有点 ,输出:图中的三角形
总结:在寻找图中的路径时,也可以使用相似的逻辑
- 使用mapred寻找图中的三角形
- mapreduce编程---寻找图中的三角形
- 寻找三角形
- 寻找三角形
- 寻找三角形
- 寻找三角形
- 寻找三角形
- 寻找三角形
- 牛客网 寻找三角形
- 百度笔试-寻找三角形
- [编程题] 寻找三角形
- [编程题] 寻找三角形
- 寻找三角形-百度-最大值
- 百度:寻找三角形
- 【算法题】寻找三角形
- [编程题] 寻找三角形
- [编程题] 寻找三角形
- [编程题] 寻找三角形
- 比较数组
- 简单内存泄漏检测方法 解决 Detected memory leaks! 问题(转)
- 最全的Android源码目录结构详解
- 关于HTTP1.1中chunked编码详解
- Android虚拟机内存可以这样优化一把
- 使用mapred寻找图中的三角形
- iPhone程序中将内容分享到新浪微博
- ListView滑动时变黑
- hadoop datanode 重新启动和hbase regionserver重新启动
- C语言复习3
- Undefined reference to
- Android开启闪光灯的几种办法
- java 之 Lock 同步锁学习示例
- 关于字符的分类,从ctype中能够挖掘出来