Ejercicio de Ordenamiento




resultado

Resultado

Muestra los arrays antes y después del ordenamiento


  
1 package burbuja;
 2 
 3 /**
 4  *
 5  * @author Wilson lancheros lopez
 6  */
 7 public class Burbuja {
 8 
 9     private static final int[][] matriz = {{1, 5, 9}, {2, 6, 7}, {3, 4, 8}};
10     private static final int[] num = {19, 9, 15, 7, 6, 4, 25, 3, 5, 1, 37, 8, 11, 26, 20};
11 
12     public static void main(String[] args) {
13         System.out.println("Arrays desordenados");
14         MostrarArraySimple();
15         MostrarArrayMulti();
16         ordenamiento_simple(num);       
17         ordenamiento_multi(); 
18         System.out.println("Arrays ordenados");
19         MostrarArraySimple();
20         MostrarArrayMulti();
21     }
22 
23     private static void ordenamiento_simple(int[] array) {
24         boolean b = true;
25         //Bucle que se va a repetir hasta que este completamente ordenado el 
26         //array
27         while (b) {
28             //Recorremos el array
29             for (int x = 0; x < array.length; x++) {
30                 int dato = array[x]; //Guardamos el valor actual
31                 //Recorremos el array desde la posición actual hasta el final
32                 for (int y = x; y < array.length; y++) {
33                     //Guardamos los valores a comparar
34                     int aux = array[y];
35                     //Si el valor actual es mayor a al siguiente los intercambia
36                     if (dato > aux) {
37                         array[x] = aux;
38                         array[y] = dato;
39                         x = y;
40                         b = false; //colocamos a falso el valor de b
41                     }
42                 }
43             }
44             //Reasignamos el valor de b con su negación, si biene un false            
45             //la convierte en true para que continúe el bucle, si viene en true
46             //quiere decir que no hizo ningún cambio por ende la cambia a false
47             //para terminar el bucle
48             b = !b; 
49         }
50     }
51 
52     private static void ordenamiento_multi() {
.
.
.
69     }
70     
71     private static void MostrarArraySimple(){
72         String texto = "Array Simple\n";
73         for (int y = 0; y < num.length; y++) {
74             texto += " " + num[y];
75         }
76         System.out.println(texto);
77     }
78     private static void MostrarArrayMulti(){
79         String texto = "Array Multi\n";
80         for (int i = 0; i < matriz.length; i++) {
81             for (int j = 0; j < matriz[0].length; j++) {
82                 texto += matriz[i][j] + ",";
83             }
84             texto += "\n";
85         }
86         System.out.println(texto);
87     }
88 }
89