[C] Selection sort si "dimentica" dei numeri?

di il
9 risposte

[C] Selection sort si "dimentica" dei numeri?

Salve! Chiedo scusa se la domanda è stata già fatta e per la mia totale ignoranza.
Volevo sapere come mai nel seguente codice il Selection Sort sembra "dimenticarsi" per strada due numeri, ovvero 50 e 31. Ho provato a cambiare i valori in array ma nulla è risolto. Sicuramente ci deve essere un problema nel calcolo che non riesco a trovare. Qualcuno potrebbe aiutarmi? Grazie!
CODICE
#include <stdio.h>

int main (void){
	int a[10] = {1,50,40,30,2,10,5,8,9,34,31};
	unsigned int i;
	unsigned int j;
	int min;
	int temp;
	
	for(i=0;i<(10-1);i++){
		min=i;
		for(j=i+1;j<10;j++){
			if(a[j]<a[min]){
				min=j;
			}
		}
		temp = a[min];
		a[min] = a[i];
		a[i] = temp;
		printf("%d ", a[i]);
	}
}
OUTPUT

9 Risposte

Devi accedere o registrarti per scrivere nel forum
9 risposte