1.1.1 Kitűzés Adott egy sorozat, és a sorozat elemein értelmezett egy “<” reláció. Rendezzük a sorozat elemeit növekvő (csökkenő) sorrendbe a megadott reláció szerint. 1.1.2 Specifikáció A: Tömb[N]:H Ef: A, N adott, “<” reláció adott. Uf: A sorozat tartalmazza az eredetileg is tartalmazott elemeit, az elemek növekvően (csökkenően) rendezettek a “<” reláció szerint. 1.1.3 Algoritmusok Megjegyzés: mivel a rendezések alapvető fontosságúak a programozásban, ezért nagyon sokféle rendezési algoritmus létezik, amelyek azonban bonyolultság és hatékonyság szempontjából eltérőek. A következőkben a legegyszerűbb rendezési algoritmusokat ismertetjük. 1.1.3.1 Közvetlen kiválasztásos rendezés Elve: ˗ Az első elemet összehasonlítjuk az utána következő elemmel, és ha az utána következő elem kisebb, akkor cserélünk. Az első elem összehasonlítását tovább folytatjuk a többi elemmel is, egészen addig, amíg a sorozat végére nem érünk. ˗ Ha a végére értünk, akkor az azt jelenti, hogy az első elem a helyére került. Ezt követően a második, harmadik elemmel járunk el ugyanígy. ˗ A legutolsó elemet már nem kell összehasonlítani, az automatikusan kerül a helyére. Szemléltető ábra:
1
Petrik tananyagtár: Rendezések, további programozási tételek Petrik Lajos Vegyipari, Környezetvédelmi és Informatikai Szakközépiskola Szoftverfejlesztő szak, 14. évfolyam, OKJ szám: 54 481 02 0010 54 04