Urejanje z vstavljanjem/Implementacija (Mathematica)

Iz MaFiRaWiki

Urejanje z vstavljanjem


Sestavimo funkcijo urejanjeVstavljanje[], ki elemente v seznamu uredi po principu vstavljanja.

 urejanjeVstavljanje[l_List] := Module[{seznam, meja},
   seznam = l;
   meja = 1;
   While[meja < Length[l],
    i = meja;
    While[i > 0,
     If[seznam[[i + 1]] < seznam[[i]],
      seznam = Drop[Insert[seznam, seznam[[i + 1]], i], {i + 2}],
      seznam = seznam
     ];
     i--
    ];
    meja++;
   ];
   Print["Urejen seznam: ",seznam]
 ]



Delovanje preverimo na različnih primerih:

 In[1]:= urejanjeVstavljanje[{2, 5, 1, 6, 3, 1}]
 Out[1]:= Urejen seznam: {1,1,2,3,5,6}

 In[2]:= urejanjeVstavljanje[{5,1}]
 Out[2]:= Urejen seznam: {1,5}
Osebna orodja