jiahaipeng

我要飞得更高
posts - 30, comments - 136, trackbacks - 4, articles - 1
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

04 2010 档案

摘要: 图的单源最短路径问题是指求一个从指定的顶点s到其他所有顶点i之间的最短距离。因为是从一点到其他顶点的距离,所以称谓单源。本文将介绍dijkstra算法:按路径长度递增次序的最短路径算法,并给出了对该算法MPI并行化算法。 一、算法思想 该算法的思想是:引入一个辅助向量D,它的每个分量D[i]为源顶点v到其他顶点v[i]的路径长度。初始态为:如有从v到vi的路径,则D[i]为弧[v,vi]的权值;否...阅读全文

posted @ 2010-04-19 09:15 飞得更高 阅读(1351) | 评论 (3) 编辑 |

摘要: 串匹配问题是计算机科学中的一个基本问题,在文字编辑、图像处理等利于都得到了广泛的应用,串匹配算法在这些应用中起到至关重要的作用。因此研究快速的串匹配算法具有重要的理论和实际意义。 KMP是一种改进的字符串模式匹配的算法,他能够在o(m+n)时间复杂度内完成字符串的模式匹配算法。本文将详细的介绍KMP算法的思想,串行及并行实现。 一、KMP算法思想 1、问题描述 给定主串S[0...n-1]、...阅读全文

posted @ 2010-04-15 09:31 飞得更高 阅读(1309) | 评论 (0) 编辑 |

摘要: 快速排序算法的效率相对较高,并行算法在理想的情况下时间复杂度可达到o(n),但并行快速排序算法有一个严重的问题:会造成严重的负载不平衡,最差情况下算法的复杂度可达o(n^2)。本篇我们介绍一种基于均匀划分的负载平衡的并行排序算法------并行正则采样排序(Parallel Sorting by Regular Sampling)。 一、算法的基本思想 假设待排序的元素n个,处理器p个。 首先...阅读全文

posted @ 2010-04-10 10:32 飞得更高 阅读(1192) | 评论 (0) 编辑 |

摘要: 为提高自己的MPI编程水平,并能及时总结MPI编程的认识,特写此系列文章。欢迎各位高手积极指导,不吝赐教。 本系列是根据陈国良院士的《并行算法实践》一书进行学习和编写。 本系列中的所有程序都是自己用心编写,并测试通过。 程序编写环境: 操作系统:Ubuntu 语言: c 并行库: MPI 编译器: gcc 编写工具:vim 本系列主要包括一下内容 一、排序算法及并行化 1)枚举排序及...阅读全文

posted @ 2010-04-10 10:29 飞得更高 阅读(1059) | 评论 (2) 编辑 |

摘要: 在上一篇中对枚举排序的MPI并行算法进行了详细的描述和实现,算法相对简单,采用了并行编程模式中的单程序多数据流的并行编程模式。在本篇中,将对快速排序进行并行化分析和实现。本篇代码用到了上篇中的几个公用方法,在本篇中将不再做说明。 在本篇中,我们首先对快速排序算法进行描述和实现,并在此基础上分析此算法的并行性,确定并行编程模式,最后给出该算法的MPI实现。 一、快速排序算法说明 快速排序时一种最...阅读全文

posted @ 2010-04-06 09:00 飞得更高 阅读(1864) | 评论 (2) 编辑 |

摘要: 前言 貌似有一年多的时间没有在博客园上发过随笔了。原因有三:1、懒,这是最主要的原因。哎,人老了,心和手也都老了。, 2、时间紧,也许这个理由这叫做借口。拿没时间作为任何事情的借口都是站不住脚的,我一直是这么认为的。但当时的确是特殊情况:原本计划一年完成的项目因为特殊原因必须在两个半月内完成。曾记得那时候从早上到晚上没有任何节假日的工作时的痛苦和激情,也忘不了项目成功上线后的喜悦和成就感。孙中山...阅读全文

posted @ 2010-04-05 08:06 飞得更高 阅读(1651) | 评论 (10) 编辑 |