慢速排序

✍ dations ◷ 2025-11-30 23:42:24 #慢速排序

慢速排序是一种排序算法。其基于合并排序的分而治之及递回的思想,并故意设计使排序过程非常缓慢。慢速排序由Andrei Broder及Jorge Stolfi在1986年发表的论文(论文名称是渐进最优算法及计算复杂性理论的戏仿)中提出。

慢速排序是一种原地算法的递回算法。

在简单的虚拟码中,此算法可以被表示为:

procedure slowsort(A, i, j)                           // 排序一個整數或浮點數數列 A,...,A ,若要使用其他的資料類型則必須重載大於或小於運算符    if i ≥ j then        return    m := ⌊(i+j) / 2⌋                                slowsort(A, i, m)                                 // (1.1)    slowsort(A, m+1, j)                               // (1.2)    if A < A then        swap A and A                            // (1.3)    slowsort(A, i, j-1)                               // (2)
  • 以慢速排序法排序前半部的元素(1.1)
  • 以慢速排序法排序后半部的元素(1.2)
  • 比较1.1及1.2排序结果的最后一个元素,选择相对较大的元素放到列表尾端(1.3)
  • 排除1.3的元素后,将列表剩下的元素以慢速排序法排序(2)

以 Haskell(纯函式编程语言)的实现如下:

slowsort :: Ord a =>  -> slowsort xs  | length xs <= 1 = xs  | otherwise      = slowsort xsnew ++   -- (2)    where        l     = slowsort $ take m xs  -- (1.1)      r     = slowsort $ drop m xs  -- (1.2)      llast = last l      rlast = last r      xsnew = init l ++ min llast rlast : init r      m     = fst (divMod (length xs) 2)

复杂度

慢速排序的运行时间关系式为 T ( n ) = 2 T ( n / 2 ) + T ( n 1 ) + 1 {displaystyle T(n)=2T(n/2)+T(n-1)+1} T ( n ) {displaystyle T(n)} 的渐近下限为 Ω ( n log 2 ( n ) ( 2 + ϵ ) ) {displaystyle Omega left(n^{frac {log _{2}(n)}{(2+epsilon )}}right)} for any ϵ > 0 {displaystyle epsilon >0} 。由于慢速排序渐近下限的时间复杂度不是多项式时间,即使在最好的情况下也比泡沫排序慢。

相关

  • 水垢水垢,又称水碱、水锈,是一种在水壶和锅炉以及保养不善的中央暖气系统(英语:Central heating)热水管线内壁中坚硬的,灰白色或黄白色的白垩沉积物。在老的水管的内表面和其他硬水蒸
  • 西市区坐标:40°39′59″N 122°12′23″E / 40.666408°N 122.206414°E / 40.666408; 122.206414西市区是中国营口市所辖的一个市辖区,是营口城市发展的起步区。西市区辖8(-1)个街道
  • 贾允升贾允升(1760年-1833年),字猷廷,号东愚,山东省黄县(今龙口市)黄格庄贾家村人。清朝政治人物。乾隆六十年(1795年)乙卯科三甲第六十四名进士,选翰林院庶吉士,散馆授检讨。嘉庆八年,上《请除
  • 奈罗礁奈罗礁,越南称为南礁(越南语:Đá Nam/.mw-parser-output .han-nom{font-family:"Nom Na Tong","Han-Nom Gothic","Han-Nom Ming","HAN NOM A","HAN NOM B","Ming-Lt-HKSCS-UNI-
  • 摩根·赫德摩根·赫德(英语:Morgan Hurd,2001年7月18日-),中文昵称夏松,美国女子体操运动员。摩根·赫德出生于中国广西梧州,出生后即被父母遗弃。她11个月大的时候时,被来自美国特拉华州的一个
  • 明爱女子短期大学明爱女子短期大学(日语:カリタス女子短期大学/かりたすじょしたんきだいがく  *),简称Karitan是一所位于日本神奈川县横滨市青叶区的私立短期大学。 
  • 阿姆斯特丹植物园阿姆斯特丹植物园(荷兰语:Hortus Botanicus Amsterdam)是位于荷兰阿姆斯特丹的植物园,是世界最古老的植物园之一,也是阿姆斯特丹的主要旅游景点之一。阿姆斯特丹植物园成立于1638
  • 气旋杜马奇尔强烈热带气旋杜马奇尔(英语:Intense Tropical Cyclone Dumazile)是2018年3月上旬在马达加斯加和留尼汪引发洪灾的强烈热带气旋,2月27日由西南印度洋阿加莱加群岛附近的低气压区发展而成。系统3月2日凝聚成热带扰动,次日升级热带风暴并获名。此后两天杜马奇尔因外界环境有利迅速增强,3月5日达到十分钟持续风速每小时165公里、一分钟持续风速每小时205公里、中心气压945毫巴(百帕,27.91英寸汞柱)最高强度,属强烈热带气旋。此后几天风切变增强,向东南移动的杜马奇尔稳步减弱,3
  • 血王龙属血王龙(属名:,发音:)是一属暴龙科的兽脚亚目恐龙,生存于白垩纪晚期(约8060万至7990万年前)的拉腊米迪亚南部,相当于现在的北美洲西南部。唯一的标本于2009年发现于犹他州大升梯国家纪念区(英语:Grand Staircase–Escalante National Monument)的瓦韦普组(英语:Wahweap Formation),包含部分头骨及颅后骨骼。2013年标本成为建立新属新种的根据:模式种西南风血王龙(),属名意为“血腥之王”,种名取自诗人荷马的西南风神,意指标本位于美国西南方的地理
  • 科林·克劳奇科林·克劳奇 (Colin Crouch;1944年-),或译科林·克鲁希,是英国社会学家和政治学家。2000年,在其著作《应对后民主》中提出了“后民主”。克劳奇目前是华威大学的名誉教授,及马克斯普朗克社会研究所的外部成员。克劳奇在《应对后民主》中提出“后民主”一词。后民主,是充分运作的民主系统(包含定期选举、政党轮替与言论自由),但其民主运作却受到限制。一小部分的菁英实际控制关键决策、民主议程及建制。克劳奇在〈有超越社会民主的自由主义吗?〉发展此概念。