logo

Program Python na triedenie výberu

Algoritmus triedenia výberu triedi pole opakovaným nájdením minimálneho prvku (vzhľadom na vzostupné poradie) z nezoradenej časti a jeho umiestnením na začiatok. Algoritmus udržiava dve podpole v danom poli.

Program Python na triedenie výberu

Poskytnutý kód Pythonu demonštruje algoritmus triedenia výberu. Triedenie výberu má časovú zložitosť O(n^2). V každej iterácii kód nájde minimálny index prvku v nezoradenej časti poľa a vymení ho za prvok aktuálneho indexu. Toto postupne zoradí pole zľava doprava. Príklad inicializuje pole, použije funkciu selectionSort na jeho zoradenie a potom vytlačí zoradené pole vo vzostupnom poradí. Zoradené pole sa získa opakovaným nájdením najmenšieho prvku v nezoradenej časti a jeho umiestnením na správnu pozíciu, výsledkom čoho je usporiadané pole: [-202, -97, -9, -2, 0, 11, 45, 88, 747].

Python3






v reťazci v jazyku Java

# Selection sort in Python> # time complexity O(n*n)> #sorting by finding min_index> def> selectionSort(array, size):> > >for> ind>in> range>(size):> >min_index>=> ind> >for> j>in> range>(ind>+> 1>, size):> ># select the minimum element in every iteration> >if> array[j] min_index = j # swapping the elements to sort the array (array[ind], array[min_index]) = (array[min_index], array[ind]) arr = [-2, 45, 0, 11, -9,88,-97,-202,747] size = len(arr) selectionSort(arr, size) print('The array after sorting in Ascending Order by selection sort is:') print(arr)>

>

>

Výkon

The array after sorting in Ascending Order by selection sort is: [-202, -97, -9, -2, 0, 11, 45, 88, 747]>

Časová zložitosť : O(č2).

Pomocný priestor : O(1).

Pozrite si celý článok na Výber Zoradiť pre viac detailov!