免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
格式约定: 用邻接表的方式来存储图,在文件中,每一行数据代表图的一个节点,行的格式可以采用一下格式:IDEdges其中ID代表节点的标识,Edges代表从某一节点出发的所有的边(对于有向图)Edges又可以用从该节点出发的边的另一端的节点表示。例如图1.1就可以用邻接表表示。 在求解图的问题时,图中的节点和边往往含有更多的信息,在用标色法求解单元最短路径时,节点的信息还包括节点的颜色、节点到源点的距离等,边的信息包括边的权值等。对以上邻接表作稍微改进便可满足要求。更新后的图文件的每一行的格式如下:IDdistancecolorEdges(weight)图1.1所示有向图加上权值信息后如图1.2所示,用邻接表表示如下其中MAX表示无穷大,颜色域,0:白色;1:灰色;2:黑色 算法流程:MAP: list() /k1:节点的ID;v1:该节点的距离、边、边的权值、颜色beginIf( color(k1) = = gray ) /如果k1的还需处理,即k1的颜色为灰色 ki p | (k1 ,ki) k1.Edges /对所有k1指向的节点If ( distance(k1) + weight(k1 ,ki) distance(ki) Set distance(distance(ki) = distance(k1) + weight(k1 ,ki); Set color(ki) = gray;emit (ki, v1)Set color(k1) = black;emit (k1, v1)endReduce BeginSet color(k2) = white;Set distance(k2) = MAX; vi list(v2)If( vi.color is hevier than k2)Set color(k2) = vi.color;If vi.distance distance(k2) )Set distance(k2) = vi.distance; If(vi.color = gray)Set color(k2) = gray; Set Edges(k2) = vi.edges if vi.edges != null; emit (k2, v) End Int I = 0;While (+i) inputPath = mapredJob(i).outPath outPath = createPath() Do mapredJob(i); If( canEnd)Break;运行示例: 一个job得输出作为另一个job的输入,多个job组成job chain 来完成最短路径的求算,当某一个job的输出中所有的节点中没有灰色节点时时停止迭代。算法停止。 Input10|1|2,10,4,5, 2MAX|0|3,1,4,2, 3MAX|0|5,4, 4MAX|0|5,2,3,9,2,3, 5MAX|0|3,6,1,7, After job_1Map :10|2|2,10,4,5, 210|1| 45|1| 2MAX|0|3,1,4,2, 3MAX|0|5,4, 4MAX|0|5,2,3,9,2,3, 5MAX|0|3,6,1,7, After job_1 Redeuce: 10|2|2,10,4,5,210|1|3,1,4,2,3MAX|0|5,4,45|1|5,2,3,9,2,3,5MAX|0|3,6,1,7,After job_2 Map :10|2|2,10,4,5,210|2|3,1,4,2,311|1|412|1|57|1|314|1|28|1|3MAX|0|5,4,45|2|5,2,3,9,2,3,5MAX|0|3,6,1,7,After job_2 Reduce:10|2|2,10,4,5,28|1|3,1,4,2,311|1|5,4,45|2|5,2,3,9,2,3,57|1|3,6,1,7,After job_3 Map:10|2|2,10,4,5,28|2|3,1,4,2,311|2|5,4,39|1|410|1|515|1|313|1|114|1|45|2|5,2,3,9,2,3,57|2|3,6,1,7,After job_3 Reduce :10|2|2,10,4,5,28|2|3,1,4,2,39|1|5,4,45|2|5,2,3,9,2,3,57|2|3,6,1,7,After job_4 Map:10|2|2,10,4,5,28|2|3,1,4,2,39|1|5,4,513|1|45|2|5,2,3,9,2,3,57|2|3,6,1,7,After job_4 Re
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护士医美顾问招聘面试题及答案
- 公务员面试例题面试题及答案
- 公务员面试聚餐面试题及答案
- 公务员面试建议面试题及答案
- 公务员面试基本思路面试题及答案
- 广汽集团校招面试题及答案
- 2025广东中山市人力资源和社会保障局南头分局就业见习岗位招募参考题库及答案详解一套
- 2026年安徽新闻出版职业技术学院单招职业技能考试必刷测试卷必考题
- 2026年郑州卫生健康职业学院单招职业适应性测试题库附答案
- 2026年浙江农林大学暨阳学院单招职业适应性考试题库完美版
- 术中输血安全管理
- 学习回信精神担当青春使命
- 江苏省无锡市江阴市部分学校2025-2026学年高二上学期期中联考数学试卷(无答案)
- 客户关系管理客户关系分级分类模板
- 绿化维护服务保证书
- 2025年学法考试广东考场一试题及答案本
- 榆林镇北台红石峡景区招聘考试真题2024
- 2025年6月浙江省高考历史试卷真题(含答案解析)
- 2024甘肃会考信息技术试题
- 2025秋青岛版(五四制)2024三年级上册科学期中检测卷(附参考答案)
- 2025云南宣富高速楚雄市东南绕城高速元绿高速那兴高速高速公路收费员招聘341人笔试历年参考题库附带答案详解
评论
0/150
提交评论