Pascal - Zoradiť podľa zlúčenia- rekurzia

Tu je rekurzívna procedúra, ktorá dokáže zoradiť pole n celých čísel pomocou metódy zlúčenia

 Postup Sort_Merge (Var t: TAB; g, d: celé číslo);

var

m, i, j, k: celé číslo;

s: TAB;

Začať

Ak d> g Potom

Začať

m: = (g + d) Div2;

Sort_Merge (t, g, m);

Sort_Merge (t, m + 1, d);

Pre i: = m DownTo g Vykonajte

s [i]: = t [i];

Pre j: = m + 1 Do d

s [d + m + 1 - j]: = t [j];

i: = g; j: = d;

Pre k: = g Pre d Do

Začať

Ak s [i] <s [j] Potom

Začať

t [k]: = s [i];

i: = i + 1;

Koniec

inak

Začať

t [k]: = s [j];

j: = j - 1;

Koniec;

Koniec;

Koniec;

Koniec;

Vďaka Zouari Lazhar za tento tip.

Predchádzajúci Článok Nasledujúci Článok

Najlepšie Tipy