Come ordinare l'array 2d in Java

Come Ordinare L Array 2d In Java



Una matrice bidimensionale o 2D è una raccolta di colonne e righe. I programmatori possono accedere in modo casuale agli elementi dell'array 2D oa ciascuna cella individualmente utilizzando i loro indici. Con l'aiuto dell'ordinamento, gli elementi dell'array vengono disposti in base alle esigenze, in ordine crescente o decrescente. Più precisamente, il Java “ Array.sort() ” può essere utilizzato per gli elementi di un array 2D all'interno di un programma.

Questo tutorial discuterà come ordinare gli array 2D in Java.

Come ordinare l'array 2D in Java?

In Java, puoi ordinare un array 2D usando:







Discuteremo ora ciascuno dei metodi menzionati uno per uno.



Metodo 1: ordinamento per riga di array 2D in Java

Nell'ordinamento per riga, puoi utilizzare ' Array.sort() ” per ordinare gli elementi dell'array. Itera ogni elemento di una riga specifica e scambia i numeri interi quando l'elemento corrente è maggiore del successivo.



Diamo un'occhiata a un esempio per capire il lato dell'implementazione.





Esempio
In questo esempio, creeremo prima un metodo statico “ rowWiseOrting() ” per ordinare l'array in ordine crescente chiamando “ Array.sort() ” della classe Arrays e quindi stampare gli elementi ordinati dell'array usando “ per ” loop:

statico int rowWiseOrting ( int arr [ ] [ ] ) {
per ( int io = 0 ; io < arr. lunghezza ; io ++ ) {
Matrici. ordinare ( arr [ io ] ) ;
}
per ( int io = 0 ; io < arr. lunghezza ; io ++ ) {
per ( int j = 0 ; j < arr [ io ] . lunghezza ; j ++ ) {
Sistema. fuori . Stampa ( arr [ io ] [ j ] + ' ' ) ;
}
Sistema. fuori . println ( ) ;
}
Restituzione 0 ;
}

Qui abbiamo un array 2D chiamato ' arr ” di forma a matrice 3×3 (tre righe e tre colonne). Ora, per ordinare le righe dell'array creato, chiameremo il metodo ' rowWiseOrting() ” passando array come argomento nel metodo main():



pubblico statico vuoto principale ( Corda [ ] arg ) {
int arr [ ] [ ] = nuovo int [ ] [ ] {
{ 12 , 14 , 4 } ,
{ 14 , 23 , venti } ,
{ 28 , 25 , 8 } ,
{ undici , 5 , 1 } } ;
rowWiseOrting ( arr ) ;
}
}

Come puoi vedere, abbiamo ordinato il nostro array in ordine crescente:

Vuoi provare l'ordinamento per colonna in Java? Dai un'occhiata alla sezione seguente.

Metodo 2: ordinamento per colonna di array 2D in Java

Per ordinare in base alle colonne un array 2D in Java, chiama ' Array.sort() ” metodo con un “ Interfaccia di confronto ”. Un'interfaccia di confronto definisce un ' confrontare() ” metodo che accetta due parametri e poi li confronta tra loro. Se i parametri passati sono uguali, restituisce zero. Se il 1° parametro è maggiore del 2° parametro, restituisce un valore positivo. In caso contrario, viene restituito un valore negativo.

Esempio
In questo esempio creeremo un metodo chiamato ' columnWiseOrting() ” con due argomenti, un array 2D “ arr[][] ' e un numero di colonna denominato ' panoramica ”. Quindi, chiama il ' Array.sort() ” metodo con il “ Interfaccia di confronto ” per confrontare i valori di una colonna. Infine, stamperemo i valori della colonna ordinata dell'array usando ' per ” loop:

statico vuoto columnWiseOrting ( int arr [ ] [ ] , int panoramica ) {
Matrici. ordinare ( arr , nuovo Comparatore < int [ ] > ( ) {
pubblico int confrontare ( int [ ] primo , int [ ] scnd ) {
Se ( primo [ panoramica - 1 ] > scnd [ panoramica - 1 ] ) {
Restituzione 1 ;
}
altro Restituzione - 1 ;
}
} ) ;
}
per ( int io = 0 ; io < arr. lunghezza ; io ++ ) {
per ( int j = 0 ; j < arr [ io ] . lunghezza ; j ++ ) {
Sistema. fuori . Stampa ( arr [ io ] [ j ] + ' ' ) ;
}
Sistema. fuori . println ( ) ;
}

Utilizzeremo l'array già creato denominato ' arr ” e passalo al “ columnWiseOrting() ” come primo parametro e “ 1 ” come secondo parametro:

columnWiseOrting ( arr , 1 ) ;

L'esecuzione del programma sopra indicato ordinerà la prima colonna del nostro array 2D:

Compiliamo tutte le informazioni essenziali per ordinare l'array 2D in Java.

Conclusione

In Java, un array 2D può essere ordinato per riga o per colonna secondo i requisiti. Per l'ordinamento per riga, viene utilizzato solo il metodo Array.sort(); tuttavia, nell'ordinamento per colonna, il metodo Array.sort() viene chiamato con l'interfaccia Comparator. Per l'ordinamento per riga, nessun parametro viene passato al metodo Array.sort(), mentre, nel metodo di ordinamento per colonna, il numero di colonne che devono essere ordinate è indicato come parametro. Questo tutorial ha discusso i metodi per ordinare l'array 2D in Java con esempi.