Előszó a magyar kiadáshoz | |
Előszó az eredeti kiadáshoz | |
Bevezetés (Iványi Anna, Lektor: Varga László) | 1 |
Algoritmusok | 1 |
Algoritmusok elemzése | 5 |
Algoritmusok tervezése | 9 |
Összefoglalás | 13 |
Matematikai alapok (Lektor: Schipp Ferenc) | 17 |
Bevezetés | 17 |
Függvények növekedés (Magyar Bernadette) | 18 |
Aszimptotikus jelölések | 18 |
Szokásos jelölések és alapfüggvényeik | 26 |
Összegzések (Simon Péter) | 35 |
Összegzések és tulajdonságaik | 35 |
Összegek nagyságrendi becslése | 38 |
Függvények rekurzív megadása (Magyar Bernadette) | 43 |
A helyettesítő módszer | 44 |
Az iterációs módszer | 47 |
A mester módszer | 50 |
A mester tétel bizonyítása | 53 |
Halmazok és más alapfogalmak (Simon Péter) | 63 |
Halmazok | 63 |
Relációk | 67 |
Függvények | 69 |
Gráfok | 70 |
Fák | 74 |
Leszámlálás és valószínűség (Ispány Márton) | 82 |
Leszámlálás | 82 |
Valószínűség | 86 |
Diszkrét valószínűségi változók | 92 |
A geometriai és a binomiális eloszlás | 96 |
A binomiális eloszlás farkai | 101 |
Valószínűségi elemzés | 105 |
Rendezés és rendezett minták (Lektor: Kormos János) | 113 |
Bevezetés | 113 |
Kupacrendezés (Veszprémi Anna) | 115 |
Kupac | 115 |
A kupac tulajdonság fenntartása | 117 |
A kupac felépítése | 119 |
A kupacrendezés algoritmus | 120 |
Elsőbbségi sorok | 122 |
Gyorsrendezés (Kása Zoltán) | 127 |
A gyorsrendezés leírása | 127 |
A gyorsrendezés hatékonysága | 129 |
A gyorsrendezés véletlen változatai | 133 |
A gyorsrendezés elemzése | 135 |
Rendezés lineáris időben (Cserges Enikő) | 143 |
Alsó korlátok a rendezés időigényére | 143 |
Leszámláló rendezés | 146 |
Számjegyes rendezés | 148 |
Edényrendezés | 150 |
Mediánok és rendezett minták (Cserges Enikő) | 155 |
Minimumális és maximumális elem | 155 |
Kiválasztás átlagosan lineáris időben | 157 |
Kiválasztás legrosszabb esetben lineáris időben | 159 |
Adatszerkezetek (Lektor: Varga László) | 165 |
Bevezetés | 165 |
Elemi adatszerkezetek (Lektor: Varga László) | 168 |
Vermek és sáncok | 168 |
Láncolt listák | 171 |
Mutatók és objektumok ábrázolása | 176 |
Gyökeres fák ábrázolása | 180 |
Hasító táblázatok (Hunyadvári László) | 186 |
Közvetlen címzésű táblázatok | 186 |
Hasító táblázatok | 188 |
Hasító függvények | 192 |
Nyílt címzés | 197 |
Bináris keresőfák (Hunyadvári László) | 208 |
Mi a bináris keresőfa? | 208 |
Keresés bináris keresőfában | 210 |
Beszúrás és törlés | 214 |
Véletlenül építésű bináris keresőfák | 217 |
Piros-fekete fák (Horváth Gyula) | 226 |
Piros-fekete fák tulajdonságai | 226 |
Forgatások | 228 |
Beszúrás | 230 |
Törlés | 234 |
Adatszerkezetek kibővítése (Horváth Gyula) | 242 |
Dinamikus rendezett minta | 242 |
Hogyan bővítsünk egy adatszerkezetet? | 247 |
Intervallum-fák | 249 |
Fejlett elemzési és tervezési módszerek (Lektor: Szántai Tamás) | 257 |
Bevezetés | 257 |
Dinamikus programozás (Vízvári Béla) | 259 |
Mátrixok véges sorozatainak szorzása | 260 |
A dinamikus programozás elemei | 266 |
A leghosszabb közös részsorozat | 271 |
Poligonok optimális triangularizációja | 275 |
Mohó algoritmusok (Horváth Gyula) | 283 |
Egy esemény-kiválasztási probléma | 283 |
A mohó stratégia elemei | 287 |
Huffman-kód | 290 |
A mohó módszerek elméleti alapjai | 296 |
Egy ütemezési probléma | 301 |
Amortizációs elemzés (Vízvári Béla) | 306 |
Az összesítési módszer | 307 |
A könyvelési módszer | 310 |
A potenciál módszer | 312 |
Dinamikus táblák | 315 |
Fejlett adatszerkezetek (Lektor: Benczúr András) | 325 |
Bevezetés | 325 |
B-fák (Csörnyei Zoltán) | 327 |
A B-fa definíciója | 330 |
A B-fák alapműveletei | 332 |
Egy kulcs törlése a B-fából | 339 |
Binomiális kupacok (Csörnyei Zoltán) | 345 |
Binomiális fák és binomiális kupacok | 346 |
A binomiális kupacokon értelmezett műveletek | 350 |
Fibonacci-kupacok (Csörnyei Marianna) | 364 |
A Fibonacci-kupacok szerkezete | 365 |
Összefésülhető-kupac műveletek | 367 |
Egy kulcs csökkentése és egy csúcs törlése | 375 |
A maximális fokszám korlátja | 378 |
Adatszerkezetek diszjunkt halmazokra (Csörnyei Marianna) | 383 |
Diszjunkt-halmaz műveletek | 383 |
Diszjunkt halmazok láncolt listás ábrázolása | 386 |
Diszjunkt-halmaz erdők | 389 |
A rang szerinti egyesítés és az úttömörítés együttes használatának elemzése | 392 |
Gráf algoritmusok (Lektor: Frank András) | 403 |
Bevezetés | 403 |
Elemi gráf algoritmusok (Sike Sándor) | 404 |
Gráfok ábrázolási módjai | 404 |
Szélességi keresés | 407 |
Mélységi keresés | 414 |
Topologikus rendezés | 421 |
Erősen összefüggő komponensek | 423 |
Minimális feszítőfák (Gregorics Tibor) | 431 |
Minimális feszítőfa növelése | 432 |
Kruskal és Prim algoritmusai | 436 |
Adott csúcsból induló legrövidebb utak (Gregorics Tibor) | 444 |
Legrövidebb utak és a fokozatos közelítés | 448 |
Dijkstra algoritmusa | 456 |
A Bellman-Ford algoritmus | 460 |
Adott csúcsból induló legrövidebb utak irányított körmentes gráfokban | 464 |
Különbségi korlátok és legrövidebb utak | 467 |
Legrövidebb utak minden csúcspárra (Benczúr András jr.) | 477 |
Egy mátrixszorzás típusú módszer legrövidebb utak és mátrix-szorzás | 479 |
A Floyd-Warshall algoritmus | 484 |
Johnson algoritmusa ritka gráfokra | 490 |
Zárt félgyűrűk: az irányított utakkal kapcsolatos problémák algebrai szerkezete | 494 |
Maximális folyamok (Szegő László) | 502 |
Hálózati folyamok | 503 |
Ford és Fulkerson algoritmusa | 509 |
Maximális párosítás páros gráfokban | 519 |
Előfolyam-algoritmusok | 522 |
Az előreemelő algoritmus | 530 |
Speciális témák (Lektorok: Csirik János és Kátai Imre) | 545 |
Bevezetés | 545 |
Rendező hálózatok (Kása Zoltán) | 547 |
Összehasonlító hálózatok | 547 |
A nulla-egy elv | 551 |
Biton sorozatokat rendező hálózat | 553 |
Összefésülő hálózat | 555 |
Rendező hálózat | 559 |
Aritmetikai áramkörök (Fornai Péter) | 564 |
Kombinációs áramkörök | 564 |
Összegző áramkörök | 569 |
Szorzó áramkörök | 589 |
Órajelvezérelt áramkörök | 585 |
Algoritmusok párhuzamos számítógépekre (Molnárka Győző) | 594 |
Mutató ugrás | 597 |
CRCW és EREW algoritmusok összehasonlítása | 606 |
Brent tétele és a munkahatékonyság | 613 |
Prefix munkahatékony párhuzamos kiszámítása | 616 |
Szimmetria determinisztikus megtörése | 622 |
Mátrixműveletek (László Lajos) | 631 |
Mátrixok alaptulajdonságai | 631 |
Strassen algoritmusa mátrixok szorzására | 638 |
Algebrai számrendszerek és Boole-mátrixok szorzása | 642 |
Lineáris egyenletrendszerek megoldása | 646 |
Mátrixok invertálása | 656 |
Szimmetrikus pozitív definit mátrixok és a legkisebb négyzetes közelítés | 660 |
Polinomok és gyors Fourier-transzformáció (Schipp Ferenc) | 669 |
Polinomok megadása | 670 |
A DFT és az FFT algoritmus | 676 |
Az FFT egy hatékony megvalósítása | 682 |
Számelméleti algoritmusok (P. Kovács Katalin) | 691 |
Elemi számelméleti fogalmak | 692 |
A legnagyobb közös osztó | 697 |
Műveletek maradékosztályokkal | 701 |
Lineáris kongruenciák megoldása | 706 |
A kínai maradéktétel | 709 |
Egy elem hatványai | 712 |
A Rivest-Shamir-Adleman (RSA) nyilvános kulcsú titkosírás | 715 |
Prímtesztek | 721 |
Egészek prímfaktorizációja | 727 |
Mintailllesztés (Sike Sándor) | 735 |
Egyszerű mintaillesztő algoritmus | 735 |
Rabin-Karp algoritmus | 739 |
Mintaillesztés véges automatákkal | 743 |
Knuth-Morris-Pratt algoritmus | 749 |
Boyer-Moore algoritmus | 755 |
Geometriai algoritmusok (Daróczy-Kiss Endre) | 764 |
Szakaszok tulajdonságai | 765 |
Metsző szakaszpár keresése | 770 |
Konvex burok meghatározása | 775 |
Legközelebbi pontpár keresése | 785 |
NP-teljesség (Wiener Gábor) | 792 |
Polinomiális idő | 793 |
Polinomiális idejű ellenőrzés | 798 |
NP-teljesség és visszavezethetőség | 802 |
NP-teljességi bizonyítások | 809 |
NP-teljes problémák | 815 |
Közelítő algoritmusok (Iványi Anna) | 830 |
A minimális lefedő csúcshalmaz probléma | 832 |
Az utazóügynök probléma | 834 |
A minimális lefogási probléma | 838 |
A részletösszeg probléma | 842 |
Irodalom | 849 |
Tárgymutató | 860 |