Cómo ordenar una matriz 2d en Java

Cómo ordenar una matriz 2d en Java
Una matriz bidimensional o 2D es una colección de columnas y filas. Los programadores pueden acceder aleatoriamente a los elementos de matriz 2D o cada celda individualmente utilizando sus índices. Con la ayuda de la clasificación, los elementos de matriz se organizan de acuerdo con los requisitos, ya sea en orden ascendente o descendente. Más específicamente, el Java "Formación.clasificar()"Se puede utilizar para los elementos de una matriz 2D dentro de un programa.

Este tutorial discutirá cómo clasificar las matrices 2D en Java.

Cómo ordenar una matriz 2d en Java?

En Java, puedes ordenar una matriz 2D usando:

  • Clasificación de hilera
  • Clasificación de columna

Ahora discutiremos cada uno de los métodos mencionados uno por uno.

Método 1: Clasificación de la matriz 2D en Java

En la clasificación de Row Wise, puede utilizar el "Formación.clasificar()Método para ordenar los elementos de la matriz. Itera cada elemento de una fila específica y cambia los enteros cuando el elemento actual es mayor que el siguiente.

Veamos un ejemplo para comprender el lado de la implementación.

Ejemplo
En este ejemplo, primero crearemos un método estático "rowwisesorting ()"Para ordenar la matriz en orden ascendente llamando"Matrices.clasificar()"Método de la clase de matrices y luego imprima los elementos ordenados de matriz usando"para"Bucles:

static int rowwisesorting (int arr [] [])
para (int i = 0; i < arr.length; i++)
Matrices.sort (arr [i]);

para (int i = 0; i < arr.length; i++)
para (int j = 0; j < arr[i].length; j++)
Sistema.afuera.imprimir (arr [i] [j] + "");

Sistema.afuera.println ();

regresar 0;

Aquí, tenemos una matriz 2D llamada "arrugado"De forma de matriz 3 × 3 (tres filas y tres columnas). Ahora, para ordenar las filas de la matriz creada, llamaremos al método "rowwisesorting ()"Al pasar la matriz como argumento en el método main ():

public static void main (string [] args)
int arr [] [] = new int [] []
12, 14, 4,
14, 23, 20,
28, 25, 8,
11, 5, 1;
Rowwisesorting (arr);

Como puede ver, hemos ordenado nuestra matriz en orden ascendente:

Quiero probar la clasificación de columna en Java? Eche un vistazo a la siguiente sección.

Método 2: Clasificación de columna de matriz 2D en Java

Para clasificar una matriz 2D en Java, llame al "Matrices.clasificar()"Método con un"Interfaz de comparación". Una interfaz comparadora define un "comparar()"Método que acepta dos parámetros y luego los compara entre sí. Si los parámetros pasados ​​son iguales, devuelve cero. Si el primer parámetro es mayor que el segundo parámetro, devuelve un valor positivo. Si no, se devuelve un valor negativo.

Ejemplo
En este ejemplo, crearemos un método llamado "columnwisesorting ()"Con dos argumentos, una matriz 2D"arr [] []"Y un número de columna llamado"colmena". Entonces, llame al "Matrices.clasificar()"Método con el"Interfaz de comparación"Para comparar los valores de una columna. Finalmente, imprimiremos los valores de la columna de matriz ordenada usando "para"Bucles:

columna void estáticawiseSorting (int arr [] [], int colmn)
Matrices.Sort (arr, nuevo comparador()
public int Compare (int [] frst, int [] scnd)
if (frst [colmn-1]> scnd [colmn-1])
regresar 1;

else return -1;

);

para (int i = 0; i< arr.length; i++)
para (int j = 0; j < arr[i].length; j++)
Sistema.afuera.imprimir (arr [i] [j] + "");

Sistema.afuera.println ();

Utilizaremos la matriz ya creada llamada "arrugado"Y pasarlo al"columnwisesorting ()"Como primer parámetro y"1"Como el segundo parámetro:

columnwisesorting (arr, 1);

La ejecución del programa anterior ordenará la primera columna de nuestra matriz 2D:

Compilamos toda la información esencial para ordenar la matriz 2D en Java.

Conclusión

En Java, una matriz 2D se puede ordenar en cuanto a fila o en cuanto a columnas según los requisitos. Para la clasificación de Row-Wise, solo la matriz.Se utiliza el método sort (); Sin embargo, en la clasificación de columna, la matriz.El método sort () se llama con la interfaz de comparación. Para la clasificación de la fila, no se pasa ningún parámetro a la matriz.Método sort (), mientras que, en el método de clasificación de columna, el número de columnas que deben ordenarse se menciona como un parámetro. Este tutorial discutió los métodos para ordenar la matriz 2D en Java con ejemplos.