Bienvenidos a www.geekprogramador.tk en este blog encontraras manuales y tutoriales sobre C/C++ también ejercicios de programación resueltos en C/C++.

lunes, abril 27, 2009

Ordenación por método de Burbuja

Definición del método de la burbuja:
En este método los valores más pequeños burbujean gradualmente es decir suben hacia la cima o parte superior del array de modo similar a como suben las burbujas en el agua, mientras que los valores mayores se hunden en la parte inferior del array, dicho método consiste en que, en cada pasada se comparan parejas sucesivas de elementos y si una pareja de números están en orden creciente o si son iguales, los valores del arreglo se dejan así como están, pero si la pareja de números está en orden decreciente los valores del arreglo se intercambian con el uso de una variable auxiliar para llevar a cabo dicho intercambio.

Etapas del algoritmo:
En la pasada 0 se comparan elementos adyacentes; (a[0],a[1],) , (a[1], a[2]) , (a[2],a[3]), (a[3],a[4]),…….(a[n-2], a[n-1])

Se realizan n -1 comparaciones, por cada pareja (a[i],a[n+1]) se intercambian los valores si a[i+1] < a[i]. Al final de la pasada, el elemento mayor de la lista está situado en a[n-1].

En la pasada 1 se realizan las mismas comparaciones e intercambios terminando con el elemento segundo mayor valor en a[n-2].

El proceso termina con la pasada n-1, en la que el elemento más pequeño se almacena en a[0].

En el siguiente ejemplo se ilustra el funcionamiento del algoritmo de la burbuja con un array de 5 elementos que tienen almacenados los valores de (a=50, 20, 40, 80, 30).








En código fuente este método seria de la siguiente manera:

for(i=0; i < j="0;"> a[j+1]){
aux = a[j];
a[j] = a[j+1];
a[j+1] = aux;
}
}
}

En los siguientes enlaces les dejo un ejemplo en C y C++, de este método de ordenación.

Enlaces de descarga:
En C++:


En C:

0 comentarios:

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Affiliate Network Reviews