SzámítógépekProgramozás

Quicksort a programozási eljárás

1960-ban, K. A. Hoar kidolgozott egy módszert a gyors osztályozást az információ lett a leghíresebb. Ma már széles körben használják a programozás, mert van egy csomó pozitív tulajdonságait: lehet használni az általános esetben van szükség, mert egy kis növekedés a plusz memóriát, összeegyeztethető különböző listák és könnyen megvalósítható. De vannak hátrányai, amely Quicksort: a munka lehetővé tette egy csomó hibát, és ez kissé instabil.

Azonban ez a legtöbb vizsgált változat. Miután az első fizetési Hoare, sokan sűrű tanulmány. nagy alap jött létre elméleti kérdéseket találni az időt a munka, amely alátámasztja az empirikus bizonyíték. Voltak valódi javítására vonatkozó javaslatok alapvető algoritmus és a megnövekedett sebességet.

Quicksort nagyon gyakori, akkor mindenhol megtalálhatók. Ennek alapján az eljárás végrehajtása TList.Sort, jelen van minden változatban (kivéve 1) Delphi, a könyvtár az idő függvényében vett a teljes, qsort C ++.

Az alapvető működési elv lehet megfogalmazni, mint egy „oszd meg és uralkodj”. Ez akkor fordul elő törés a lista két csoportba vannak rendezve, és minden egyes rész önmagában. Ebből következik, hogy nagyobb figyelmet kell fordítani az elválasztási folyamat, amelynek során a következő történik: határozzuk meg egy alapelem és a viszonylag átrendeződött a teljes listát. Beépített balra egy csoport jelöltek, amelyek értéke kevesebb, mint az összes többi átigazolási szabályok. Kiderült, hogy a fő elem a rendezett lista van az őt megillető helyet. A következő lépés - kihívás rekurzív rendezési funkciók mindkét fél számára az elemek az alaphoz képest. Ez leállítja a folyamatot csak akkor működik, ha a lista csupán egyetlen elemet tartalmaz, azaz, hogy lehet válogatni. Így annak érdekében, hogy elsajátítsák a programozási funkciót, mint egy gyors rendezés, meg kell tudni, hogy a munka az alacsonyabb szintű algoritmusok: a) a választás a alaptag; b) azok a leghatékonyabb permutáció termelni két kisebb és egy nagyobb értékeket.

Megismertesse az első elvek. Kiválasztásánál az alapelem, ideális esetben a listából kiválasztott átlagos. Aztán a szünet van osztva két egyenlő részre. Csak kiszámításához átlagos értéke a lista nagyon nehéz, így még a leggyorsabb rendezési kikerüli ezt a fogkő oldalon. De a választás az alapvető elem a maximális vagy minimális érték - szintén nem a legjobb megoldás. Amennyiben ilyen meghatározását egy teremt üres lista fogja biztosítani, és a második teljes. Ezért azt a következtetést, hogy a alaptag kell választani az egyik, hogy közelebb van az átlag, de a maximális és minimális.

Miután a választás határozza, akkor folytassa a bomlási algoritmus. Ez az úgynevezett belső köreiben gyors sort. Minden épül két Rapid Access indexek: először megy át az elemek balról jobbra, a második, éppen ellenkezőleg, jobbról balra. Kezdi meg a működését végrehajtási jog: az index a listán, és hasonlítsa össze az összes értéket a fő. A ciklus befejeződött, amikor az elem kisebb, vagy egyenlő, mint az alapvonal. Ez azt jelenti, van egy összehasonlítás, és csökkenti az értéket az index. A bal oldali, amikor a munka befejeződött nagyobb vagy egyenlő értékű. Itt az összehasonlítás értéke növekszik.

Ebben a szakaszban a particionáló algoritmus, amely quicksort két helyzet állhat elő. Az első az, hogy az index a bal oldalon kisebb, mint a jobb. Ez hibát jelez, akkor vannak olyan elemei, amelyek azt állították, a listán vannak rossz sorrendben. Kimenet - változtatni helyüket. A másik helyzet az, amikor mind az oszlop egyenlő vagy keresztbe. Ez jelzi a sikeres szétválasztása a listán, vagyis a munka befejeződött.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 hu.atomiyme.com. Theme powered by WordPress.