Kā kārtot 2d masīvu Java

Ka Kartot 2d Masivu Java



Divdimensiju vai 2D masīvs ir kolonnu un rindu kolekcija. Programmētāji var nejauši piekļūt 2D masīva elementiem vai katrai šūnai atsevišķi, izmantojot to indeksus. Ar šķirošanas palīdzību masīva elementi tiek sakārtoti atbilstoši prasībām neatkarīgi no tā, vai tie ir augošā vai dilstošā secībā. Precīzāk, Java ' Array.sort() ” var izmantot 2D masīva elementiem programmā.

Šajā apmācībā tiks apspriests, kā kārtot 2D masīvus Java.

Kā kārtot 2D masīvu Java?

Programmā Java varat kārtot 2D masīvu, izmantojot:







Tagad mēs apspriedīsim katru no minētajām metodēm pa vienam.



1. metode: 2D masīva kārtošana pa rindām Java

Šķirojot pa rindiņām, varat izmantot “ Array.sort() ”, lai kārtotu masīva elementus. Tas atkārto katru noteiktas rindas elementu un apmaina veselus skaitļus, ja pašreizējais elements ir lielāks par nākamo.



Apskatīsim piemēru, lai izprastu ieviešanas pusi.





Piemērs
Šajā piemērā vispirms mēs izveidosim statisku metodi ' rowWiseSorting() ', lai sakārtotu masīvu augošā secībā, izsaucot ' Arrays.sort() ” metodi masīvu klasē un pēc tam izdrukājiet sakārtotos masīva elementus, izmantojot priekš ” cilpas:

statisks starpt rowWiseSorting ( starpt arr [ ] [ ] ) {
priekš ( starpt i = 0 ; i < arr. garums ; i ++ ) {
Masīvi. kārtot ( arr [ i ] ) ;
}
priekš ( starpt i = 0 ; i < arr. garums ; i ++ ) {
priekš ( starpt j = 0 ; j < arr [ i ] . garums ; j ++ ) {
Sistēma. ārā . drukāt ( arr [ i ] [ j ] + ' ' ) ;
}
Sistēma. ārā . println ( ) ;
}
atgriezties 0 ;
}

Šeit mums ir 2D masīvs ar nosaukumu ' arr ” 3×3 matricas formā (trīs rindas un trīs kolonnas). Tagad, lai sakārtotu izveidotā masīva rindas, mēs izsauksim metodi “ rowWiseSorting() ”, nododot masīvu kā argumentu galvenajā () metodē:



publiski statisks nederīgs galvenais ( Stīga [ ] args ) {
starpt arr [ ] [ ] = jauns starpt [ ] [ ] {
{ 12 , 14 , 4 } ,
{ 14 , 23 , divdesmit } ,
{ 28 , 25 , 8 } ,
{ vienpadsmit , 5 , 1 } } ;
rowWiseSorting ( arr ) ;
}
}

Kā redzat, mēs esam sakārtojuši savu masīvu augošā secībā:

Vai vēlaties izmēģināt kārtošanu pa kolonnām Java? Apskatiet nākamo sadaļu.

2. metode: 2D masīva kārtošana pa kolonnām Java

Lai Java kārtotu 2D masīvu kolonnās, izsauciet “ Arrays.sort() ' metode ar ' Salīdzinājuma interfeiss ”. Salīdzinājuma interfeiss definē “ salīdzināt() ” metode, kas pieņem divus parametrus un pēc tam salīdzina tos savā starpā. Ja nodotie parametri ir vienādi, tas atgriež nulli. Ja 1. parametrs ir lielāks par 2. parametru, tas atgriež pozitīvu vērtību. Ja nē, tiek atgriezta negatīva vērtība.

Piemērs
Šajā piemērā mēs izveidosim metodi ar nosaukumu ' kolonnaWiseSorting() ' ar diviem argumentiem, 2D masīvs ' arr[][] ' un kolonnas numurs ar nosaukumu ' pārskats ”. Pēc tam zvaniet uz ' Arrays.sort() ' metode ar ' Salīdzinājuma interfeiss ”, lai salīdzinātu kolonnas vērtības. Visbeidzot mēs izdrukāsim sakārtotās masīva kolonnas vērtības, izmantojot “ priekš ” cilpas:

statisks nederīgs kolonnaWiseSorting ( starpt arr [ ] [ ] , starpt pārskats ) {
Masīvi. kārtot ( arr , jauns Salīdzinātājs < starpt [ ] > ( ) {
publiski starpt salīdzināt ( starpt [ ] pirmais , starpt [ ] scnd ) {
ja ( pirmais [ pārskats - 1 ] > scnd [ pārskats - 1 ] ) {
atgriezties 1 ;
}
cits atgriezties - 1 ;
}
} ) ;
}
priekš ( starpt i = 0 ; i < arr. garums ; i ++ ) {
priekš ( starpt j = 0 ; j < arr [ i ] . garums ; j ++ ) {
Sistēma. ārā . drukāt ( arr [ i ] [ j ] + ' ' ) ;
}
Sistēma. ārā . println ( ) ;
}

Mēs izmantosim jau izveidoto masīvu ar nosaukumu ' arr ' un nododiet to uz ' kolonnaWiseSorting() ' kā pirmais parametrs un ' 1 ” kā otro parametru:

kolonnaWiseSorting ( arr , 1 ) ;

Iepriekš norādītās programmas izpilde sakārtos mūsu 2D masīva pirmo kolonnu:

Mēs apkopojam visu būtisko informāciju, lai kārtotu 2D masīvu Java.

Secinājums

Java 2D masīvu var kārtot pa rindām vai kolonnām atbilstoši prasībām. Lai šķirotu pa rindiņām, tiek izmantota tikai metode Array.sort(); tomēr kolonnu šķirošanā metode Array.sort() tiek izsaukta ar Comparator interfeisu. Šķirojot pa rindiņām, metodei Array.sort() netiek nodots neviens parametrs, savukārt kārtošanas metodē pa kolonnām kā parametrs tiek minēts kārtojamo kolonnu skaits. Šajā apmācībā ar piemēriem tika apspriestas metodes, kā kārtot 2D masīvu Java.