Pascal - Rendezés egyesítéssel - rekurzióval

Itt van egy rekurzív eljárás, amely az n egész számok tömbjét rendezheti az egyesítés módjának segítségével

 Eljárás Sort_Merge (Var t: TAB; g, d: egész szám);

var

m, i, j, k: egész szám;

s: TAB;

Kezdődik

Ha d> g

Kezdődik

m: = (g + d) Div 2;

Sort_Merge (t, g, m);

Sort_Merge (t, m + 1, d);

Az i: = m DownTo g-ra

s [i]: = t [i];

J esetén: = m + 1 d

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

i: = g; j: = d;

A k: = g esetén d

Kezdődik

Ha s [i] <s [j]

Kezdődik

t [k]: = s [i];

i: = i + 1;

vég

Más

Kezdődik

t [k]: = s [j];

j: = j - 1;

Vége;

Vége;

Vége;

Vége;

Köszönjük Zouari Lazharnak ezt a tippet.

Előző Cikk Következő Cikk

Top Tippek