Algoritmus třídění výběru třídí pole opakovaným nalezením minimálního prvku (s ohledem na vzestupné pořadí) z neseřazené části a jeho umístěním na začátek. Algoritmus udržuje dvě podpole v daném poli.
Program Python pro třídění výběru
Poskytnutý kód Pythonu demonstruje algoritmus třídění výběru. Třídění výběru má časovou složitost O(n^2). V každé iteraci kód najde minimální index prvku v neseřazené části pole a zamění jej s prvkem aktuálního indexu. Tím se pole postupně seřadí zleva doprava. Příklad inicializuje pole, použije funkci selectionSort k jeho seřazení a poté seřazené pole vytiskne ve vzestupném pořadí. Seřazené pole se získá opakovaným nalezením nejmenšího prvku v neseřazené části a jeho umístěním na správnou pozici, výsledkem je uspořádané pole: [-202, -97, -9, -2, 0, 11, 45, 88, 747].
Python3
k-nn algoritmus
Java programování prvočísel
# 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)> |
>
>
bash zkontrolujte, zda je nastavena proměnná prostředíVýstup
The array after sorting in Ascending Order by selection sort is: [-202, -97, -9, -2, 0, 11, 45, 88, 747]>
Časová složitost : O(n2).
substring_index v sql
Pomocný prostor : O(1).
Přečtěte si prosím celý článek na Výběr Seřadit Více podrobností!