Algoritmo de ordenamiento Burbuja en Java y C#
Ordenamiento Burbuja o Bubble Sort es un algoritmo para ordenar arreglos o listas de menor a mayor, conocido por la mayoría de los programadores.
Consiste en recorrer la lista las veces que sea necesario e ir comparando los elementos de a dos e intercambiándolos si fuera necesario para ordenarlos.
La condición a seguir seria:
Si(arreglo[i]>arreglo[i+1]) entonces
Variable Temporal=arreglo[i]
arreglo[i]=arreglo[i+1]
arreglo[i+1]=Variable Temporal
Y luego se incrementaría ya fuera de la condición el índice [i] en 1, bastaría con un i++. Un ejemplo básico seria una lista así:
Arreglo original: [5,4,8,7,6,3]
Primera pasada: [4,5,7,3,6,8]
Segunda pasada: [4,5,3,6,7,8]
Tercera pasada: [4,3,5,6,7,8]
Cuarta pasada: [3,4,5,6,7,8]
Asi en cuatro recorridos haciendo las comparaciones este metodo ordeno el arreglo.
Este es un ejemplo del metodo escrito en Java:
public static void burbuja(int [] ordenar) //recibe como parametro el arreglo desordenado
{
for (int i=1; i<ordenar.length;i++) //este for recorre el arreglo tantas veces como sea su tamaño.
{
for(int j=0;j<ordenar.length-1;j++) // este for recorre el arreglo y repite la condicion.
{
if (ordenar[j] > ordenar[j+1]) // compara los elementos en los indices [j] y [j+1]
{
int temp = ordenar[j]; // si el valor del indice [j] es mayor al de [j+1] los intercambia
ordenar[j]= ordenar[j+1];
ordenar[j+1]= temp;
}
}
}
}
Escrito en C#:
public static void burbuja(int[] ordenar) //recibe como parametro el arreglo desordenado
{
for (int i = 1; i < ordenar.Length; i++) //este for recorre el arreglo tantas veces como sea su tamaño.
{
for (int j = 0; j < ordenar.Length - 1; j++) // este for recorre el arreglo y repite la condicion.
{
if (ordenar[j] > ordenar[j + 1]) // compara los elementos en los indices [j] y [j+1]
{
int temp = ordenar[j]; // si el valor del indice [j] es mayor al de [j+1] los intercambia
ordenar[j] = ordenar[j + 1];
ordenar[j + 1] = temp;
}
}
}
}
Son códigos bastante similares ya que Java y C# utilizan casi la misma sintaxis, lo único que cambia en entre ambos es el método length en Java length y en C# Length. Tambien podría implementarse burbuja en c# utilizando foreach.
Con esto concluimos este articulo, saludos desde TecnoTutoriales.
No hay comentarios:
Publicar un comentario