[ Foro de C++ ]

Duda sobre un algoritmo de ordenación

10-Nov-2015 16:41
Invitado (Emiliano)
1 Respuestas

Buenas queria consultarles una duda, empezamos en la facultad con el tema de arreglos y vi un ejemplo en internet que funciona pero tengo una duda

 
#include <iostream>
using namespace std;
 
int main(int argc, char *argv[]) {
	int lista[] = {3,2,7,9,6};
	int i,j,aux;
	for (i = 0 ; i < 5; i++){ //* no comprendo como funciona este bucle *//
		for(j = 0 ; j< 5 ; j++){
			if(lista[j] > lista[j+1]){
				aux = lista[j];
				lista[j] = lista[j+1];
				lista [j+1] = aux;
			}
		}
	}
 
	for (i = 0 ; i < 5 ; i++){
		cout << lista[i] << "  ";
	}
	return 0;
}
 


si quito ese bucle for el algoritmo de ordenamiento no funciona, si alguno podria aclararme la duda se lo agradeceria, gracias :)


10-Nov-2015 22:13
Nacho Cabanes (+30)

La idea es:

Para cada dato
   Comparas con todos los demás
       Y si el de la izquierda es mayor que el de la derecha,
           Los intercambias






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)