viernes, 21 de octubre de 2016

Java básico #20

Algoritmos de ordenación. Método de la burbuja

El método de la burbuja es uno de los más conocidos y unos de los primeros en aprender.
Consiste en comparar pares de elementos adyacentes en un array y si están desordenados intercambiarlos y así hasta que estén todos ordenados.

Si tenemos un array numeros a ordenar, se realizan numeros.length-1 pasadas si la variable i es la que cuenta el número de pasadas, en cada una se comprueban los elementos adyacentes desde el primero hasta numeros.legth-i-1 ya que el resto hasta el final, ya estarán ordenados. Si los elementos adyacentes están desordenados, se intercambian.

He aquí un ejemplo:

int [] numeros = {27,9,7,15,50,26};
int aux;
for(int i=0;i<numeros.length-1;i++){
    for(int j=0;j<numeros.length-i-1;j++){
        if(numeros[j+1]<numeros[j]){
            aux=numeros[j+1];
            numeros[j+1] = numeros[j];
            numeros[j] = aux;
         }
    }
}

Es uno de los peores algoritmos de ordenación en cuanto a tiempo de ejecución, solamente es recomendable su uso para ordenar listas con un número pequeño de elementos.

Solución al ejercicio anterior:

package OrdenamientoArraysSort;
 
import java.util.Arrays;
 
public class Main {
 public static void main(String args[]){
  int notas[] = {4,8,10,2,0,7,9,1};
  String idiomas[] = {"español","inglés","alemán","ruso","chino","árabe"};
 
  Arrays.sort(notas);
  for(int i = 0; i < notas.length;i++){
   System.out.println("El array notas: " + notas[i]);
  }
 
  Arrays.sort(idiomas);
  for(int i = 0; i < idiomas.length; i++){
   System.out.println("El array idiomas: " + idiomas[i]);
  }
 
 }
}

No hay comentarios:

Publicar un comentario