L'algoritmo di ordinamento della selezione ordina un array trovando ripetutamente l'elemento minimo (considerando l'ordine crescente) dalla parte non ordinata e ponendolo all'inizio. L'algoritmo mantiene due sottoarray in un dato array.
Programma Python per l'ordinamento delle selezioni
Il codice Python fornito dimostra l'algoritmo di ordinamento della selezione. L'ordinamento della selezione ha una complessità temporale pari a O(n^2). In ogni iterazione, il codice trova l'indice dell'elemento minimo nella porzione non ordinata dell'array e lo scambia con l'elemento dell'indice corrente. Questo ordina gradualmente l'array da sinistra a destra. L'esempio inizializza un array, applica la funzione SelectionSort per ordinarlo, quindi stampa l'array ordinato in ordine crescente. L'array ordinato si ottiene trovando ripetutamente l'elemento più piccolo nella porzione non ordinata e posizionandolo nella sua posizione corretta, risultando in un array ordinato: [-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)> |
funzioni di stringa in Java
>
industria e fabbrica
>Produzione
The array after sorting in Ascending Order by selection sort is: [-202, -97, -9, -2, 0, 11, 45, 88, 747]>
Complessità temporale : SU2).
Spazio ausiliario : O(1).
Si prega di fare riferimento all'articolo completo su Ordinamento selezione per ulteriori dettagli!