0% encontró este documento útil (0 votos)
94 vistas3 páginas

Guía del Método Burbuja

El documento describe el método de ordenamiento de burbuja. Este método ordena un arreglo comparando pares de elementos contiguos y intercambiándolos si están en el orden incorrecto, repitiendo este proceso hasta ordenar completamente el arreglo. El documento también presenta ejemplos de código para implementar el método de burbuja y ordenar un arreglo de números aleatorios usando este algoritmo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
94 vistas3 páginas

Guía del Método Burbuja

El documento describe el método de ordenamiento de burbuja. Este método ordena un arreglo comparando pares de elementos contiguos y intercambiándolos si están en el orden incorrecto, repitiendo este proceso hasta ordenar completamente el arreglo. El documento también presenta ejemplos de código para implementar el método de burbuja y ordenar un arreglo de números aleatorios usando este algoritmo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Nombre: Santiago Ren Sarmiento Sotomayor Docente: Ing. Daniel Irene Tema: Mtodo de Intercambio o de Burbuja.

Consiste en evaluar pares de elementos contiguos del arreglo, y si el primero es mayor que el siguiente los intercambia, segn la condicin. Todo sucede dentro de dos ciclos (for) que recorren el arreglo. El ciclo ms interno realiza las comparaciones, y es ah donde el elemento mayor ocupara una posicin mayor. Formas de Mtodo Burbuja: Comparando primer elemento con el segundo, luego segundo con tercero y sucesivamente. for (i=1;i<Nelementos;i++) { for (j=0;j<=Nelementos-1 ;j++) { if (array[j] > array[j+1]) { Aux=array[j]; array[j]=array[j+1]; array[j+1]=Aux; } } }

Comparando primer elemento con todos los dems restantes, y luego el segundo con todos los elementos restantes, as sucesivamente.

El algoritmo se puede disear para que ordene un vector de forma ascendente como tambin descendentemente.

for (i = 0; i < Nelementos; i++) { for (int j = i +1; j < Nelementos; j++) { if (array[i] > array[j]) { Aux = array[i]; array[i] = array[j]; array[j] = Aux; } } }

Ejemplo: Ordenar ascendentemente el siguiente vector.

A=[5, 3, 7, 1]

(Corrida manual) Array (limite=3) A=[5, 3, 7, 1] A=[3, 5, 7, 1] A=[3, 5, 7, 1] A=[3, 5, 1, 7] A=[3, 5, 1, 7] A=[3, 1, 5, 7] A=[3, 1, 5, 7] A=[1, 3, 5, 7]

Condicin for(j=0;j<limite;j++) Pasos { for(i=0;i<limite;i++) If(A[i]>A[i+1]) intercambia } 1 2 3 4 5 6 7 Primer array A=[5, 3, 7, 1] Array ordenado de forma ascendente A=[1, 3, 5, 7] 5>3 5<7 7>1 Vuelvo a comparar desde A[0] 3<5 5>1 5>7 Vuelvo a A[0] 3>1 Fin Procedimiento

Mtodos Directos de Ordenamiento de un Array o Vector. Burbuja. Insercin Directa. Consiste en insertar un elemento en el vector y comenzar de nuevo con los elementos restantes. Ejemplo: ordenar el elemento 7.

Insertaremos el elemento numero 8 saltando por los elementos 6 y 7.

Seleccin. 1. Seleccionar el menor elemento del vector de n elementos. 2. Intercambia dicho elemento con el primero. 3. Se repiten esas operaciones con n-1 elementos restantes, se selecciona el segundo y continuamos con n-2, as sucesivamente hasta que solo quede el mayor.

Referencia: [Link] [Link]

EJEMPLO: Usar mtodo burbuja para ordenar el array creado aleatoriamente. Metodo_Burbuja.cpp #include <iostream> #include <time.h> #include <cstdlib> #include <windows.h> #define length(x) (sizeof(x)/sizeof(x[0])) using namespace std; void cambio(int &a, int &b); void ordenar_burbuja(int arreglo[], int limite); void mostrar_array(int arreglo[], int limite); int main() { int lim=0; cout<<"Ingrese el limite del array unidimensional"<<endl; cin>>lim; int array[lim]; srand(time(NULL)); cout<<"\n"<<"Primer array"<<endl<<"A=["; for (int i=0; i<lim;i++)//crea un array con numeros aleatorios array[i]=1+rand()%29; mostrar_array(array,lim); cout<<" ]"<<"\n\n"<<"Array ordenado"<<"\n"<<"A=["; ordenar_burbuja(array,lim); mostrar_array(array,lim); cout<<" ]"; system("pause>null"); return 0; } void ordenar_burbuja(int arreglo[], int limite)//Compara susecivamente. { for (int i=0;i<limite-1;i++) for (int j=0;j<limite-1;j++) if(arreglo[j] > arreglo[j+1]) cambio(arreglo[j],arreglo[j+1]); } void cambio(int &a, int &b)//Paso por referencia de valor de un elemento { int aux=b; b=a; a=aux; } void mostrar_array(int arreglo[], int limite) { for (int i=0; i<limite;i++) cout<<" "<<arreglo[i]; }

El cdigo fuente est diseado para que comprare cada uno de los elementos con el que le sigue, de esa forma sucesivamente hasta terminar el proceso.

También podría gustarte