Topologinen lajittelu
Siirry navigaatioon
Siirry hakuun
Tähän artikkeliin tai sen osaan on merkitty lähteitä, mutta niihin ei viitata. Älä poista mallinetta ennen kuin viitteet on lisätty. Voit auttaa Wikipediaa lisäämällä artikkelille asianmukaisia viitteitä. Lähteettömät tiedot voidaan kyseenalaistaa tai poistaa. |
Topologinen lajittelu (engl. topological sorting) tarkoittaa tietojenkäsittelytieteessä tapaa järjestää suunnatun syklittömän verkon (DAG) solmut jonoksi. Jos graafi kuvaa riippuvuuksia, niin topologisessa järjestyksessä solmun riippuvuudet tulevat aina ennen itse solmua.
Algoritmi
[muokkaa | muokkaa wikitekstiä]Hyvä ja helppo algoritmi topologiseen lajitteluun käyttää hyväkseen syvyyssuuntaista läpikäyntiä: aina kun solmu on käyty kokonaan läpi, se lisätään listan ensimmäiseksi. Tuloksena on topologisesti lajiteltu lista.
Algoritmin asymptoottinen suoritusaika on O(n).
Lähteet
[muokkaa | muokkaa wikitekstiä]- Thomas Cormen, Charles Leiserson, Ronald Rivest ja Clifford Stein: ”23.4 Topological sort”, Introduction to Algorithms – 2nd ed. MIT Press ja McGraw-Hill, 2001. ISBN 0-262-03293-7.