Rendezési tételek
A következő tételek a sorozat elemeinek permutálását végzik. Lényegük a kapott adatokat növekvő vagy csökkenő sorrendbe kell rendezni.
Többfajta rendezési eljárás létezik. A megfelelő eljárás kiválasztásánál több szempontot kell figyelembe venni a rendszer tárigényét, végrehajtási időt, az eljárás során végrehajtott összehasonlítások száma. A rendezési tételek belső rendezést végeznek, azaz az adatok a rendezés során mindvégig a számítógép tárába maradnak.
Rendezés közvetlen kiválasztással
A rendezendő számokat A(N) vektorban tároljuk. Az első lépésben kiválasztjuk a legkisebb elemet, ezt összehasonlítjuk a többi elemmel egyenként, ha kisebbet találunk helyet cserélnek. Így a menet végére A(1)-ben a legkisebb elem lesz. Az eljárást A(2)-vel folytatjuk, és N-1-szer ismételjük meg, ekkor a vektor rendezett lesz.
Rendezés közvetlen kiválasztással algoritmusa
Eljárás:
Ciklus I=1-től N-1-ig
Ciklus J=I+1-től N-ig
Ha A(J)<A(I) akkor B:=A(J), A(J):=A(I),A(I):=B
Ciklus vége
Ciklus vége
Eljárás vége
Rendezés minimum kiválasztással
A rendezésben a felesleges cserék kiküszöbölése miatt két segédváltozót vezetünk be. Az ÉRTÉK nevű változó a legkisebb elemet tárolja, az index pedig az elem vektorbeli sorszámát.
Rendezés minimum kiválasztással algoritmusa
Eljárás:
Ciklus I=1-től N-1-ig
Index:=I, ÉRTÉK:=A(I)
Ciklus J=I+1-től N-ig
Ha ÉRTÉK>A(J) akkor ÉRTÉK:=A(J), INDEX:=J
Ciklus vége
A(INDEX):=A(I), A(I):=ÉRTÉK
Ciklus vége
Eljárás vége
Buborékos rendezés
A teljes rendezéshez N-lépés kell.
Buborékos rendezés algoritmusa
Eljárás:
Ciklus I=2-től N-1-ig
Ciklus J=N-től I-ig –1-esével
Ha A(J-1)>A(J) akkor B:=A(J-1), A(J-1):=A(J),A(J):=B
Elágazás vége
Ciklus vége
Ciklus vége
Eljárás vége
Lényegük a kapott adatokat növekvő vagy csökkenő sorrendbe kell rendezni.
A rendezendő számokat A(N) vektorban tároljuk. Az első lépésben kiválasztjuk a legkisebb elemet, ezt összehasonlítjuk a többi elemmel egyenként, ha kisebbet találunk helyet cserélnek. Így a menet végére A(1)-ben a legkisebb elem lesz. Az eljárást A(2)-vel folytatjuk, és N-1-szer ismételjük meg, ekkor a vektor rendezett lesz.
A rendezésben a felesleges cserék kiküszöbölése miatt két segédváltozót vezetünk be. Az ÉRTÉK nevű változó a legkisebb elemet tárolja, az index pedig az elem vektorbeli sorszámát.
A buborékos rendezés alapja a szomszédos elemek cseréje. Első ütemben a rendezendő A(N) vektor végéről indulva minden elemet összehasonlítunk az előtte levővel, amennyiben rossz sorrendben vannak felcseréljük őket. Minden további ütemben a vektor végéről indítunk, de minden ütemben kevesebb összehasonlításra van szükség, a vektor eleje rendezetté válik.