Internet, Deporte y Educación

Página personal de Sergio Palay

Algorítmo para Ordenar una matriz en Java

Posted by sergiopalay en agosto 24, 2012

Les dejo un sencillo ejemplo de como ordenar una matriz en Java … espero que les sirva ..

*
c) ORDENAR LOS ELEMENTOS DE UNA MATRIZ DE FORMA ASCENDENTE

*/
package actividad3unidad3;

import java.util.Scanner;
import java.util.Random;

public class Ejercicio6c {
public static void main(String[] args) {
// TODO code application logic here
int F;
int C;

//Solicito las dimensiones de la matriz y la creo

Scanner leer= new Scanner(System.in);
System.out.print(«Ingrese la cantidad de filas «);
F=leer.nextInt();
Scanner leer2= new Scanner(System.in);
System.out.print(«Ingrese la cantidad de columnas «);
C=leer2.nextInt();
int [][] matriz = new int [F] [C];

// cargar matriz y mostrar su contenido
for(int i=0; i<F; i++){
for(int j=0; j<C; j++){
Random rnd = new Random ();
matriz [i][j]= rnd.nextInt();
System.out.print(matriz [i][j]+»  «);
}
System.out.print( » «+»\n»);
}

for( int i=0; i < F; i++){//ordena la matriz de abajo hacia arriba
for( int j=0;j< C; j++){
for(int x=0; x < F; x++){
for(int y=0; y <C; y++){
if(matriz[i][j] < matriz[x][y]){
int t = matriz[i][j];
matriz[i][j] = matriz[x][y];
matriz[x][y] = t;
}
}
}
} }

// mostrar como quedó ordenada la matriz

System.out.print( «—————————–«+»\n»);
for(int i=0; i<F; i++){
for(int j=0; j<C; j++){
System.out.print(matriz [i][j]+»  «);
}
System.out.print( » «+»\n»);
}
}
}

11 respuestas to “Algorítmo para Ordenar una matriz en Java”

  1. Ivan said

    Eres un genio amigo, muchas gracias

  2. Germán said

    me sirvio mucho, gracias.

  3. isra said

    excelente amigo como me ayudaste te BENDIGO Y DECLARO MAS SABIDURIA EN TU VIDA

  4. chica4bits said

    Bastante interesante tu código, me ha servido de maravilla. Aunque en realidad llegue a este articulo buscando el código para una calculadora de matriz en Java, la verdad me ha servido para usar en otro ejercicio.

  5. armando hyugga said

    muy buen codigo felizidades

  6. gustavo said

    Gracias papa!!

  7. claudio said

    ordenar la matriz A(n,m) ascendente pro filas
    alguien me ayuda con este ejercicio por favor

  8. guille said

    buen código pero deberías decir ordenar de menor a mayor. lo digo por que puede generar confusion

  9. saul said

    interesante

  10. Julius Erving said

    He visto ese mismo código mil veces por ahí pero no se porque nadie se da cuenta de que tiene un fallo de concepto y es que compara cada uno de los elementos con todos los elementos incluyendo los que ya comparó con anterioridad de nuevo y desde el principio y eso no debería ser correcto aunque funcione.
    Os pongo un ejemplo, matriz de 1000 x 1000 que son 1 millon de celdas, resulta que cuando esté comparando justo en la penultima celdas en la 999.998 (si hemos empezado por la cero), y teniendo en cuenta que todas las demás anteriores ya estarían ordenadas, en vez de compararla exclusivamente con las 999.999, ese código me la va a comprar con las 999.997 anteriores y solo estoy poniendo el ejemplo de que nos encontremos en la penultima celda y asi con todas, es un disparate y si la tabla es mayor nos morimos.

  11. Dayneth SA said

    ¿Y como se le haría si yo quiero que me ordene con nombres?

Deja un comentario