Batcher归并网络

✍ dations ◷ 2025-06-08 19:16:42 #并发计算

Batcher排序网络是由一系列Batcher比较器(Batcher's Comparator)组成的。Batcher比较器是指在两个输入端给定输入x,y,再在两个输出端输出最大值max{x,y}和最小值min{x,y}。

比较器网络是用Batcher比较器连成的完成某一功能的网络。

所谓双调序列(Bitonic Sequence)是指由一个非严格增序列X和非严格减序列Y(其中X的最小元素正好是Y的最大元素)构成的序列,比如序列(23,10,8,3,5,7,11,78)。

定义:一个序列a1,a2,…,an是双调序列(Bitonic Sequence),如果:

输入两个已排好序的序列,对这两个序列进行归并排序,在串行算法中的时间复杂度为O(n)。在并行计算中可以用奇偶归并算法来实现的。以输入的两个4元素有序序列为A和B为例,首先将这两个序列进行逆洗牌(Unshuffle)得到两个序列:其中一个是由A,B中奇数号元素组成的序列,记作奇序列OM,另一个则是由A,B中偶数号元素组成的序列,记作偶序列序列EM。接着将OM送入(2,2)奇归并器中,将EM送入(2,2)偶归并器中。于是得到一组有序的奇序列和一组有序偶序列。最后除了奇序列一个元素之外将这两个序列进行洗牌(Shuffle)比较操作即可得到一个有序序列。

算法的递归性:一个n阶的归并器是由两个n/2阶的归并器加一个洗牌比较网络构成的。比如上面的两个(2,2)归并器和最后的洗牌比较网络就构成了一个(4,4)的归并器。

一个四阶奇偶归并的例子:假设归并前的的序列是(1,5,7,6)和(2,3,4,9),那么第一次操作就将(1,2,7,4)送入(2,2)归并器中归并,得到结果为(1,2,4,7);(5,3,6,9)送入(2,2)归并器中归并,得到结果为(3,5,6,9),接着将这两个排号序的序列进行洗牌比较:(1,3<->2,5<->4,6<->7,9)=>(1,2,3,4,5,6,7,9)。

可以证明这个算法是正确的,我们要用到高德纳(Donald Ervin Knuth)的0-1原理,我们发现,对于输入的任意两个有序的0,1序列,奇序列与偶序列正好相差0个,1个或2个0。由于奇序列的第一个元素不参与最后的洗牌比较,所以参与比较的0,1数偶只有0个或1个,所以对0,1序列一定能够得到正确的排序。故而对任意的序列,奇偶归并网络可以产生正确的排序。

双调归并网络是基于Batcher定理而构建的。Batcher定理是说将任意一个长为2n的双调序列A分为等长的两半X和Y,将X中的元素与Y中的元素一一按原序比较,即 a i {\displaystyle a_{i}} a i + n ( i n ) {\displaystyle a_{i+n}(i\leq n)} 比较,将较大者放入MAX序列,较小者放入MIN序列。则得到的MAX和MIN序列仍然是双调序列,并且MAX序列中的任意一个元素不小于MIN序列中的任意一个元素。

根据这个原理,我们可以将一个输入的n元素双调序列首先通过洗牌比较操作得到一个MAX序列和一个MIN序列,然后通过两个n/2阶双调归并器处理就可以得到一个有序序列。

这个算法也是递归的,因为n阶的双调归并器是由一个洗牌比较网络两个n/2阶的双调归并器组成的。

相关

  • 止痛药镇痛药(Analgesic)是指能缓解痛的一类药物。该词起源于希腊语中的"an"(意即“没有”)和"algos"(意即“痛”)。镇痛药通过不同的机理作用于中枢和周围神经系统,对痛觉中枢有选择性抑
  • 促甲状腺激素促甲状腺激素,又称TSH(英语:Thyroid-stimulating hormone, TSH or Thyrotropin),是一个由垂体前叶当中的促甲状腺激素细胞所分泌的肽类激素。该激素用于调节甲状腺的内分泌功能.
  • 绳文时代绳纹时代(日语:繩文時代)指日本旧石器时代末期至新石器时代,这一时期以绳纹陶器的逐步使用为主要特征。关于绳纹时代的开始时间,学术界有不同的观点,有一万六千年前:44、一万三千
  • 无籽西瓜无籽西瓜,又称无核西瓜,通常指经过人工处理后生产的三倍体西瓜。一般的西瓜是二倍体植物(即每个细胞内有2套染色体)。用秋水仙素处理萌发的普通西瓜幼苗,使染色体加倍,植株成为四
  • 苗瑶语苗瑶语是苗、瑶、畲等族群所使用的有共同来源的一些语言的总称。学术界对于苗瑶语的语言系属分类有不同看法:华人和中国学者多认为苗瑶语是属于汉藏语系的语族,即苗瑶语族;欧美
  • 伦敦政经学院Rerum cognoscere causas To know the causes of things (伦敦政治经济学院(英语:The London School of Economics and Political Science;缩写:LSE;简称:伦敦经济学院或伦敦政经
  • 哈巴罗夫斯克哈巴罗夫斯克机场(俄语:Хабаровский аэропорт;IATA代码:KHV;ICAO代码:UHHH),也称哈巴罗夫斯克新机场(俄语:Аэропорт Хабаровск-Новый;径自作
  • 肺癌分期肺癌是依照 TNM 系统(tumor-node-metastasis)分期,T代表肿瘤本身的大小或是侵犯范围,N代表周边淋巴结侵犯及转移,M代表远端转移。临床上,医师会依据影像检查、病理报告等资讯决定T
  • 埃尼埃尼,全称为国家碳化氢公司(Eni,Ente nazionale ldrocarburi),是意大利政府成立的国家控股公司,专门经营石油产品,是世界第七大石油集团公司之一,也是在世界大炼油公司中排第8位。埃
  • 杀马特杀马特,是从英文单词“smart”音译过来的中国大陆流行语,杀马特属于非主流的一种,并流行于城市移民青年。可类比台湾的台客一辞,皆含贬义。《外交政策》网站分析认为,这一群体缺