Pascal - Sorter etter sammenslåing - rekursjon
Her er en rekursiv prosedyre som kan sortere en rekke n-heltall ved hjelp av metoden for sammenslåing
Prosedyre Sort_Merge (Var t: TAB; g, d: heltall);Var
m, i, j, k: heltall;
s: TAB;
Begynne
Hvis d> g deretter
Begynne
m: = (g + d) Div 2;
Sort_Merge (t, g, m);
Sort_Merge (t, m + 1, d);
For jeg: = m DownTo g Do
s [i]: = t [i];
For j: = m + 1 Til d Gjør
s [d + m + 1 - j]: = t [j];
i: = g; j: = d;
For k: = g Til d Gjør
Begynne
Hvis s [i] <s [j] deretter
Begynne
t [k]: = s [i];
i: = i + 1;
Slutt
Ellers
Begynne
t [k]: = s [j];
j: = j - 1;
Slutt;
Slutt;
Slutt;
Slutt;
Takk til Zouari Lazhar for dette tipset.