フィボナッチヒープ

フィボナッチヒープ: Fibonacci heap)とは、計算機科学におけるデータ構造ヒープ)の1つ。

フィボナッチヒープの名前は、処理時間を解析する際にフィボナッチ数が使用されたことによる。

概要

フィボナッチヒープは1984年にMichael L. Fredmanとロバート・タージャンの二人によって開発され、1987年に科学雑誌に最初に掲載された。フィボナッチヒープを導入することで、ダイクストラやPrimのアルゴリズムを含めたいくつかのグラフアルゴリズムの実行時間を改善したことで最もよく知られている。

二項ヒープとよく似たデータ構造であるが、より償却実行時間が短くなる。フィボナッチヒープはグラフ内で最短経路を計算するためのダイクストラ法や、グラフの最小全域木を計算するプリム法の漸近的な処理時間を改善するのに用いられる。

特に、挿入、最小値検索、キー値減算、マージの操作は償却O(1)時間内で完了する。削除と最小値削除の操作は償却O(log n)時間内で完了する。つまり、空のデータ構造から始めた場合、最初のグループの「a」個の操作、および二番目のグループの「b」個の操作からなる任意のシーケンスは、O(a + b log a)の時間で完了する。

二項ヒープでは、このような一連の操作ではO((a + b)log(n))時間かかる。よってaよりbが漸近的に小さい場合はフィボナッチヒープは二項ヒープよりよい。

空の構造から一連の操作にかかる時間は上で述べた範囲内に収まるが、(非常にまれだが)いくつかの操作では非常に長い時間かかることがある(特にキー値減算、要素の削除、最小値の削除にかかる時間は、最悪の場合要素数に比例する)。この理由により、フィボナッチヒープ及びそれを用いているデータ構造はリアルタイムシステムにはふさわしくないかもしれない。

計算量

計算量(最大ヒープ)
操作 最悪計算量 償却計算量
最大値の取得 O(1) O(1)
要素数の取得 O(1) O(1)
追加 O(1) O(1)
削除 Ω(n) O(log n)
値の更新 Ω(n) O(1)

上記の償却計算量を最悪計算量にしたい場合は、弛緩ヒープ (: relaxed heap) を用いると良い[1]

フィボナッチヒープの構造

フィボナッチヒープの例。次数0,1,3の3つの木を持つ。(水色で示されている)3つの頂点はマークされている。それゆえにヒープのポテンシャルは9である。

フィボナッチヒープはminimum-heap propertyを満足する木の集まりである。つまり、ある子のキーは常に親のキーよりも等しいか大きい。つまり最小のキーは常に何れかの木のルートにある。二項ヒープと比較してフィボナッチヒープの構造はより柔軟である。木は規定された形を特に持っておらず、極端な場合はヒープ中の n 個の要素が全て別々の(n 個の)木に属しているかもしれないし、深さ n の一つの木に属しているかもしれない。この柔軟さによって、ある種の操作を後回しにするなど「怠惰な」処理方法が許される。例えば、二つのヒープを結合するには単に二つのヒープの木のリストを連結するだけで良いし、「キーの減算」操作の過程ではあるノードが親から切り離されて新しい木を作る場合がある。

しかしながら、処理時間を抑えるためには、何らかの時点でヒープにある種の秩序を導入しなければならない。特に、ノードの次数(=ノードが直接持つ子の数)はかなり小さく抑えられる:個々のノードの次数はたかだか O(log n) であり、かつ、次数 k のノードが持つサブツリーの大きさは少なくとも Fk + 2 である(ここで Fk は k 番目のフィボナッチ数)。これを守るために、ルートでないノードからはたかだか一つの子しか切り取れないという規約を作る。二つ目の子を切り取る場合は、そのノード自身も親から切り取って新しい木のルートにする。木全体の数は「最小値の削除」操作によって木同士を繋ぐことで減少する。

柔軟な構造を持つために、一部の操作には長い時間がかかる一方、他の操作は非常に速く終わるということが起きる。走行時間の償却解析においては、「非常に速い操作」の所要時間は実際の所要時間よりも若干長いものとして扱う。この余分な時間は、後に「遅い操作」が実際に要した時間から差し引かれる。後で使うために取っておかれている時間の量は、任意の時点でポテンシャル関数によって計測される。フィボナッチヒープのポテンシャル関数は次式によって与えられる。

ここで t はフィボナッチヒープの中にある木の数、m はマークされたノードの数である。あるノードは、自身が他のノードの子となって以降、自身の子が少なくとも一つ切り取られたならばマークされる(但しルートはマークせず、マークされたノードがルートになった場合はマークを消す)。

従って、ヒープ内のそれぞれの木のルートは 1 単位時間を保持している。この単位時間は後でこの木を他の木と償却時間 0 でリンクするのに使うことができる。また、個々のマークされたノードは 2 単位時間を保持している。このうち 1 単位時間はそのノードを親から切り離すのに使うことができる。もしこれが起きると、そのノードはルートとなり、残る 2 つめの単位時間を他のルートと同様に保持し続けることになる。

操作の実装

高速に実装および結合を行うには、すべての木のルートノードを環状にリンクし、双方向リストにする。それぞれのノードの子もまた同様なリストにする。それぞれのノードには子の番号とノードにマークがついているかどうかを維持する。さらに最小のキーを含むルートへのポインタも維持する。

最小値検索の操作は、最小値を含むノードへのポインタを維持しているなら些細なものである。ポインタの維持にはヒープのポテンシャルを変更することはないので、実時間および償却時間は共に一定である。上記のために、結合操作は二つのヒープの木のルートのリストを単純につなぎ合わせることで実装される。この操作は一定時間で処理可能でありまたヒープのポテンシャルも変更しない。また償却時間も一定であることも導かれる。挿入操作は一つの要素を持つ新しいヒープを作りそれを結合すればよい。この操作にかかる時間は一定であり、ポテンシャルは木の数が増えることにより一つ増える。償却時間はまだ一定である。

図1のフィボナッチヒープに最小拡大の最初のフェーズを適用したもの。キー1を持つノード(最小)が削除され、その子が分離した木として追加された。

最小値拡大操作(最小値削除)は3つのフェーズに分けて行われる。最初に最小要素を含むルートノードを取り出しそれを削除する。ルートノードの子は新しい木のルートになる。もしその子の数がdならば、すべての新しいルートノードの処理にかかる時間はO(d)でありポテンシャルはd-1増える。それゆえにこのフェーズの償却時間はO(d)=O(log n)になる。

図1のフィボナッチヒープに最小拡大を完全に適用したもの。最初に3と6のノードを一緒にリンクする。そしてノード2をルートとする木につなげる。最後に新たに最小ノードが見つかる。

しかしながら最小値拡大操作を完了するには、最小値を持つルートノードへのポインタを更新する必要がある。不幸にもn個までのルートノードをチェックする必要があるかもしれない。二番目のフェーズでは、同じ次数のルートノードを一緒につなげてルートノードの数を減らす。uとvという二つの同じ次数のルートノードがあった場合、一方を子にしてよりキー値が小さいもう一方をルートのままにしておく。そのルートの次数は一つ増える。この操作をすべてのルートが異なる次数になるまで繰り返し行う。同じ次数の木を効率的に検索するために、O(log n)の長さを持つ配列を用意し、それぞれの深さのあるルートへのポインタを保持するようにする。2番目に同じ深さのルートが見つかったならば、その二つの木を結合して配列の内蔵を更新する。二番目のフェーズ開始時のルートの数がmとすると、実実行時間はO(log n + m)になる。最後に、高々O(log n)個のルートになる(それぞれのルートは異なる次数になっている)。それゆえにポテンシャルは少なくともm - O(log n)減り償却時間はO(log n)になる。

3番目のフェーズではルートとして残っているものをチェックして最小値を検索する。これにはO(log n)の時間がかかりポテンシャルは変化しない。最小値拡大操作の全体の償却時間はO(log n)になる。

図1のフィボナッチヒープでノード9のキーを0に減らしたもの。2つのマークされた祖先と同様にこのノードは1をルートとする木から切り取られ新しくルートとして配置される。

あるノードについてキー値減算操作を行うということは、つまりキーを減算しその結果ヒーププロパティに違反することになったら(新しいキーが親のキーよりも小さくなる)そのノードを親から切り離すことである。もし親がルートノードでなければ、そのノードにはマークがつけられる。もしすでにマークがつけられていたならばそのノードを切り離して親にマークをつける。それをルートかマークされていない頂点に到達するまで上に向かって続ける。この処理中にいくつかの、ここではkとする、新しい木を作成する。これらの新しい木は恐らく最初の一つを除いてもともとマークされていたが、ルートになるのでマークされなくなる。一つのノードはマークされうる。それゆえにポテンシャルは少なくともk - 2減る。切り取るのにかかる実時間はO(k)かかる。それゆえに償却時間は一定である。

最後に削除操作は、単に削除する要素のキーを無限に減らす、つまりヒープ全体の中で削除対象の要素のキーを最小にするというように実装される。これをノードを削除するための最小拡大と呼ぶ。この操作にかかる償却時間はO(log n)である。

参照

  1. ^ Driscoll, James R.; Gabow, Harold N.; Shrairman, Ruth; Tarjan, Robert E. (November 1988). “Relaxed heaps: an alternative to Fibonacci heaps with applications to parallel computation”. Communications of the ACM. doi:10.1145/50087.50096. 

Read other articles:

American comic book series This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: American Vampire – news · newspapers · books · scholar · JSTOR (July 2016) (Learn how and when to remove this template message) American VampireCover of American Vampire #1.Publication informationPublisherVertigo (DC Comics)ScheduleMo...

الحمار الوحشي ( Equus quagga ) والحيوانات البرية الزرقاء (Connochaetes taurinus) في فوهة نجورونجورو بمنطقة محمية نجورونجورو. الحركة الجماعية للحيوانات البرية في تنزانيا في حديقة سيرينغيتي الوطنية Serengeti. تحتوي تنزانيا على حوالي 20 في المائة من أنواع الثدييات الكبيرة في أفريقيا، وتتكاثر من خل

Tàu tuần dương Noshiro trong vịnh Tokyo, tháng 7 năm 1943 Lịch sử Nhật Bản Đặt hàng 1939Xưởng đóng tàu Xưởng hải quân YokosukaĐặt lườn 4 tháng 9 năm 1941Hạ thủy 19 tháng 7 năm 1942Hoạt động 30 tháng 6 năm 1943 [1]Xóa đăng bạ 20 tháng 12 năm 1944Số phận Bị máy bay Mỹ đánh chìm ngày 26 tháng 10 năm 1944 phía Nam Mindoro trong vùng biển Sulu11°42′B 121°41′Đ / 11,7°B 121,683°Đ...

Jan z Brienne król Jerozolimy (iure uxoris) Okres od 1210do 1212 Iure uxoris Marii z Montferratu Cesarz Łaciński Okres od 1231do 1237 Poprzednik Baldwin II(Baldwin II de Courtenay) Następca tytularnyBaldwin II(Baldwin II de Courtenay) Dane biograficzne Data urodzenia ok. 1169/1170 Data śmierci 23 marca 1237 Ojciec Erard II de Brienne Matka Agnieszka de Montfaucon Żona Maria z Montferratuod 14 września 1210do 1212 Dzieci Jolanta Jerozolimska Żona Stefania Armeńskaod 1214do 1219 Dzieci...

Untuk kegunaan lain dari Sahara, lihat Sahara (disambiguasi). Sahara Hotel and Casino Fakta dan statistik Alamat 2535 Las Vegas Blvd SouthLas Vegas, NV 89109Tanggal pembukaan 7 Oktober 1952Nama sebelumnya Club BingoJenis kasino Berdasarkan TanahTema MarokoPemilik Stockbridge/SBE Holdings, LLCJumlah kamar 1,720Luas perjudian 85,000ft² (7,896 m²)Acara permanen The Platters, The Coasters & The DriftersRosanne BarrThe Amazing JohnathanThe Musical History of the King...

Passenger transportation hub in Camden, New Jersey Walter Rand Transportation CenterWalter Rand Transportation Center entrance from BroadwayGeneral informationOther namesBroadwayLocation527 Martin Luther King BoulevardCamden, New JerseyCoordinates39°56′35″N 75°7′11″W / 39.94306°N 75.11972°W / 39.94306; -75.11972Owned byNJ Transit and Delaware River Port AuthorityPlatforms2 side platforms (River Line)1 island platform (PATCO)Tracks2 (River Line); 2 (PATCO)Bu...

Список апостолів, єпископів і патріархів Константинопольської православної церкви з роками правління. Зміст 1 Візантійські єпископи (38 — 330) 2 Архієпископи Константинопольські (330—451) 3 Константинопольські патріархи (з 451) 4 Вселенські патріархи (з 587 або 588) 4.1 Загостренн...

The wild man syndrome, also known as wild pig syndrome, is a culture-bound syndrome that affects the mental health of New Guinean males in which they become hyperactive, clumsy, kleptomaniacal, and “conveniently amnesic.[1] It is known in various languages of New Guinea as guria, longlong, or lulu. Man Gone Wild Wild-pig syndrome is a socially constructed disorder with an emotion classification of the Gururumba tribe. The illness is characterized by involuntary antisocial behavior, ...

Scottish footballer Wilf Low Personal informationFull name Wilfrid Lawson LowDate of birth (1884-12-08)8 December 1884Place of birth Aberdeen, ScotlandDate of death 30 April 1933(1933-04-30) (aged 48)Place of death Newcastle upon Tyne, EnglandHeight 5 ft 11 in (1.80 m)[1]Position(s) Centre halfSenior career*Years Team Apps (Gls) Abergeldie Montrose 1904–1909 Aberdeen 107 (3)1909–1924 Newcastle United 324 (9)Total 431 (12)International career1911–1920 Scotland...

Dutch Nazi politician This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Meinoud Rost van Tonningen – news · newspapers · books · scholar · JSTOR (November 2014) (Learn how and when to remove this template message) Meinoud Rost van TonningenMember of the House of RepresentativesIn office1937–194513th Presiden...

Australian geologist Jim BowlerJim Bowler at Lake Mungo in 1991.NationalityAustralianKnown forDiscovering Lake Mungo remainsScientific careerInstitutionsUniversity of Melbourne Jim Maurice Bowler (born 1930) is an Australian geologist known for discovering the Lake Mungo remains, which are considered the oldest human remains in Australia.[1] He is a professorial fellow at the University of Melbourne, School of Earth Sciences. Early life Bowler’s father was a fisherman who came ...

— هذا التعليق غير المُوقَّع كتبه مثال مستخدم (نقاش • مساهمات) هذه صفحة ملعب القالب لصفحة قالب:غير موقع (فرق). توثيق القالب[عرض] [عدّل] [تاريخ] [محو الاختزان] [استخدامات] طُوِّر هذا القالب في ورشة إنشاء القوالب وصيانتها وتعريبها في ويكيبيديا العربية. يم�...

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Hi-Tek album – news · newspapers · books · scholar · JSTOR (March 2013) (Learn how and when to remove this template message) 2001 studio album by Keak da SneakHi-TekStudio album by Keak da SneakReleasedJune 16, 2001Recorded2001GenreGangsta Rap, Wes...

Ken Duken Født17. apr. 1979[1][2][3][4] (45 år)Heidelberg[5]BeskjeftigelseFjernsynsskuespiller, skuespiller, filmskuespiller, teaterskuespiller, filmregissør EktefelleMarisa Leonie Bach (2000–)NasjonalitetTysklandUtmerkelserBayerns fjernsynspris (2009)[6]Aktive år1999–Nettstedhttp://www.kenduken.com/HTML/index.htmlIMDbIMDbKen Duken på Commons Ken Duken (født 17. april 1979 i Heidelberg) er en tysk skuespiller, blant annet kjent fo...

Emmanuel Félix de Wimpffen, 1870. Baron Emmanuel Felix de Wimpffen (13 September 1811 – 26 Februari 1884) adalah seorang Jenderal Prancis keturunan Austria. Biografi Seorang anggota dari Keluarga Wimpffen, de Wimpffen lahir di Laon, putra tidak sah dari Baron Félix Victor Charles Emmanuel de Wimpffen oleh Cornélie Bréda. Ayahnya adalah seorang jenderal di Angkatan Darat Prancis yang telah dibuat Baron Kekaisaran pada tahun 1810. Pada tahun 1836 ia diakui oleh ayahnya. Mema...

Harvard ist eine Weiterleitung auf diesen Artikel. Weitere Bedeutungen sind unter Harvard (Begriffsklärung) aufgeführt. Harvard University Motto Veritas(„Wahrheit“) Gründung 1636 Trägerschaft privat Ort Cambridge, Massachusetts,Vereinigte Staaten Vereinigte Staaten Präsident (interim) Vereinigte Staaten Alan Garber[1] Studierende 35.276 (August 2022)[2] Mitarbeiter ca. 10.000 Stiftungsvermögen 49,4 Milliarden US-Dollar (2022)[3] Hochschulsport Crim...

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Esophageal dysphagia – news · newspapers · books · scholar · JSTOR (February 2017) (Learn how and when to remove this message) Medical conditionEsophageal dysphagiaSpecialtyGastroenterology Esophageal dysphagia is a form of dysphagia where the underlying cause ...

Paghimo ni bot Lsjbot. Dinumma Siyentipikinhong Pagklasipikar Kaginharian: Animalia Ka-ulo: Arthropoda Kasipak-ulo: Hexapoda Kahutong: Insecta Kahanay: Lepidoptera Kapunoang-banay: Noctuoidea Kabanay: Noctuidae Kahenera: Dinumma Espesye: ' Siyentipikinhong Ngalan Dinumma Kahenera sa mga alibangbang ang Dinumma.[1] Ang Dinumma sakop sa kabanay nga Noctuidae.[1] Ang kladogram matud sa Catalogue of Life mao[1]: Dinumma  Dinumma combusta Dinumma deponens Dinumma hades...

Hello WhisperBlade! Welcome to Wikipedia! Thank you for your contributions. If you decide that you need help, check out Getting Help below, ask me on my talk page, or place {{helpme}} on your talk page and someone will show up shortly to answer your questions. Please remember to sign your name on talk pages by clicking or using four tildes (~~~~); this will automatically produce your name and the date. Finally, please do your best to always fill in the edit summary field. Below are some usef...

Corancy Corancy Vị trí trong vùng Burgundy Corancy Hành chính Quốc gia Pháp Vùng Bourgogne-Franche-Comté Tỉnh Nièvre Quận Château-Chinon Tổng Château-Chinon Liên xã Haut Morvan Xã (thị) trưởng Martiel Gouël(2001-2008) Thống kê Độ cao 322–730 m (1.056–2.395 ft) Diện tích đất1 30,15 km2 (11,64 dặm vuông Anh) Nhân khẩu1 366    - Mật độ 12/km2 (31/sq mi) INSEE/Mã bưu chính 58082/ 581...