算法練習(xí)(98): 路徑壓縮(1.5.12-1.5.13)

本系列博客習(xí)題來自《算法(第四版)》,算是本人的讀書筆記艇棕,如果有人在讀這本書的,歡迎大家多多交流串塑。為了方便討論沼琉,本人新建了一個微信群(算法交流),想要加入的桩匪,請?zhí)砑游业奈⑿盘枺簔hujinhui207407 謝謝打瘪。另外,本人的個人博客 http://www.kyson.cn 也在不停的更新中傻昙,歡迎一起討論

算法(第4版)

知識點

  • 路徑壓縮

題目

1.5.12 使用路徑壓縮的 quick-union 算法闺骚。根據(jù)路徑壓縮修改 quick-union 算法(請見 1.5.2.3 節(jié)),在 find() 方法中添加一個循環(huán)來將從 p 到根節(jié)點的路徑上的每個觸點都連接到根節(jié)點妆档。給出一列輸入僻爽,使該方法能夠產(chǎn)生一條長度為 4 的路徑。注意:該算法的所有操作的均攤成本已知為對數(shù)級別贾惦。這種改變會對性能產(chǎn)生怎樣的影響胸梆?


1.5.12 Quick-union with path compression. Modify quick-union (page 224) to include path compression, by adding a loop to union() that links every site on the paths from p and q to the roots of their trees to the root of the new tree. Give a sequence of input pairs that causes this method to produce a path of length 4. Note : The amortized cost per operation for this algorithm is known to be logarithmic.

分析

路徑壓縮在書中的敘述在英文版231頁敦捧,如下:


答案

題目

1.5.13 使用路徑壓縮的加權(quán) quick-union 算法。修改加權(quán) quick-union 算法(算法 1.5)碰镜,實現(xiàn)如練習(xí) 1.5.12 所述的路徑壓縮兢卵。給出一列輸入,使該方法能產(chǎn)生一棵高度為 4 的樹绪颖。注意:該算法的所有操作的均攤成本已知被限制在反 Ackermann 函數(shù)的范圍之內(nèi)秽荤,且對于實際應(yīng)用中可能出現(xiàn)的所有 N 值均小于 5。


1.5.13 Weighted quick-union with path compression. Modify weighted quick-union (Algorithm 1.5) to implement path compression, as described in Exercise 1.5.12. Give a sequence of input pairs that causes this method to produce a tree of height 4. Note : The amortized cost per operation for this algorithm is known to be bounded by a function known as the inverse Ackermann function and is less than 5 for any conceivable practical value of N.

分析

題目中的Ackermann柠横,相信大家不一定熟悉窃款,這里我找了些資料:

威廉·阿克曼



威廉·阿克曼,德國數(shù)學(xué)家牍氛,最著名的成果是計算理論的重要例子阿克曼函數(shù)雁乡。

阿克曼函數(shù)
阿克曼函數(shù)(Ackermann)是非原始遞歸函數(shù)的例子。它需要兩個自然數(shù)作為輸入值糜俗,輸出一個自然數(shù)踱稍。它的輸出值增長速度非常高,僅是對于(4,3)的輸出已大得不能準確計算悠抹。
Ackermann函數(shù)定義如下:
若m=0珠月,返回n+1。
若m>0且n=0楔敌,返回Ackermann(m-1,1)啤挎。
若m>0且n>0,返回Ackermann(m-1,Ackermann(m,n-1))卵凑。

單變量反Ackermann函數(shù)(簡稱反Ackermann函數(shù))
α(x)定義為最大的整數(shù)m使得Ackermann(m,m)≤x庆聘。從上面的討論中可以看到,因為Ackermann函數(shù)的增長很快勺卢,所以其反函數(shù)α(x)的增長是非常慢的伙判,對所有在實際問題中有意義的x,α(x)≤4黑忱,所以在算法時間復(fù)雜度分析等問題中宴抚,可以把α(x)看成常數(shù)。
α(x)出現(xiàn)在使用了按秩合并和路徑壓縮的并查集算法的時間復(fù)雜度中甫煞。

我相信就算我貼了這么多菇曲,很多人還是對Ackermann函數(shù)一知半解,那我們這里再解釋一下抚吠。首先我們要了解Ackermann函數(shù)是“非原始遞歸函數(shù)”常潮。那遞歸大家都知道,那什么叫做“原始遞歸”和“非原始遞歸”呢楷力。

答案

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末喊式,一起剝皮案震驚了整個濱河市孵户,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌垃帅,老刑警劉巖延届,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件剪勿,死亡現(xiàn)場離奇詭異贸诚,居然都是意外死亡,警方通過查閱死者的電腦和手機厕吉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進店門酱固,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人头朱,你說我怎么就攤上這事运悲。” “怎么了项钮?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵班眯,是天一觀的道長。 經(jīng)常有香客問我烁巫,道長署隘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任亚隙,我火速辦了婚禮磁餐,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘阿弃。我一直安慰自己诊霹,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布渣淳。 她就那樣靜靜地躺著脾还,像睡著了一般。 火紅的嫁衣襯著肌膚如雪入愧。 梳的紋絲不亂的頭發(fā)上荠呐,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天,我揣著相機與錄音砂客,去河邊找鬼泥张。 笑死阵漏,一個胖子當(dāng)著我的面吹牛默刚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播航瞭,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼彤恶,長吁一口氣:“原來是場噩夢啊……” “哼钞钙!你這毒婦竟也來了鳄橘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤芒炼,失蹤者是張志新(化名)和其女友劉穎瘫怜,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體本刽,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡鲸湃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了子寓。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片暗挑。...
    茶點故事閱讀 38,789評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖斜友,靈堂內(nèi)的尸體忽然破棺而出炸裆,到底是詐尸還是另有隱情,我是刑警寧澤鲜屏,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布烹看,位于F島的核電站,受9級特大地震影響洛史,放射性物質(zhì)發(fā)生泄漏惯殊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一虹菲、第九天 我趴在偏房一處隱蔽的房頂上張望靠胜。 院中可真熱鬧,春花似錦毕源、人聲如沸浪漠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽址愿。三九已至,卻和暖如春冻璃,著一層夾襖步出監(jiān)牢的瞬間响谓,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工省艳, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留娘纷,地道東北人。 一個月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓跋炕,卻偏偏與公主長得像赖晶,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,697評論 2 351