Programul Python pentru sortarea selecției
Algoritmul de sortare prin selecție sortează o matrice găsind în mod repetat elementul minim (luând în considerare ordinea crescătoare) din partea nesortată și punându-l la început. Algoritmul menține două subbary într-o matrice dată.
Programul Python pentru sortarea selecției
Codul Python furnizat demonstrează algoritmul de sortare a selecției. Selection Sort are o complexitate de timp de O(n^2). În fiecare iterație, codul găsește indexul elementului minim în porțiunea nesortată a matricei și îl schimbă cu elementul indexului curent. Aceasta sortează treptat matricea de la stânga la dreapta. Exemplul inițializează o matrice, aplică funcția selectionSort pentru a o sorta și apoi tipărește matricea sortată în ordine crescătoare. Matricea sortată se obține prin găsirea în mod repetat a celui mai mic element din porțiunea nesortată și plasarea acestuia în poziția corectă, rezultând o matrice ordonată: [-202, -97, -9, -2, 0, 11, 45, 88, 747].
Python3
# 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)> |
Ieșire
The array after sorting in Ascending Order by selection sort is: [-202, -97, -9, -2, 0, 11, 45, 88, 747]
Complexitatea timpului : Pe 2 ).
Spațiu auxiliar : O(1).
Vă rugăm să consultați articolul complet pe Sortare selecție pentru mai multe detalii!