Hogyan rendezzünk 2d tömböt Java-ban

Hogyan Rendezzunk 2d Tombot Java Ban



A kétdimenziós vagy 2D tömb oszlopok és sorok gyűjteménye. A programozók véletlenszerűen hozzáférhetnek a 2D tömb elemeihez vagy az egyes cellákhoz az indexeik felhasználásával. A rendezés segítségével a tömbelemek igény szerint rendeződnek, akár növekvő, akár csökkenő sorrendben. Pontosabban a Java ' Array.sort() ” egy programon belüli 2D tömb elemeihez használható.

Ez az oktatóanyag a 2D tömbök Java nyelven történő rendezését tárgyalja.

Hogyan lehet 2D tömböt rendezni Java-ban?

A Java programban a 2D tömböt a következőképpen rendezheti:







Most az említett módszerek mindegyikét egyenként tárgyaljuk.



1. módszer: 2D tömb soronkénti rendezése Java nyelven

A soronkénti rendezésnél használhatja a „ Array.sort() ” módszerrel rendezheti a tömb elemeit. Egy adott sor minden elemét iterálja, és felcseréli az egész számokat, ha az aktuális elem nagyobb, mint a következő.



Nézzünk meg egy példát a megvalósítási oldal megértéséhez.





Példa
Ebben a példában először létrehozunk egy statikus metódust ' rowWiseSorting() ' a tömb növekvő sorrendbe rendezéséhez a ' Arrays.sort() ” metódusát az Arrays osztályban, majd nyomtassa ki a tömb rendezett elemeit a „ számára ” hurkok:

statikus int rowWiseSorting ( int arr [ ] [ ] ) {
számára ( int én = 0 ; én < arr. hossz ; én ++ ) {
Tömbök. fajta ( arr [ én ] ) ;
}
számára ( int én = 0 ; én < arr. hossz ; én ++ ) {
számára ( int j = 0 ; j < arr [ én ] . hossz ; j ++ ) {
Rendszer. ki . nyomtatás ( arr [ én ] [ j ] + ' ' ) ;
}
Rendszer. ki . println ( ) ;
}
Visszatérés 0 ;
}

Itt van egy „2D tömbünk” arr ” 3×3 mátrix formájú (három sor és három oszlop). Most a létrehozott tömb sorainak rendezéséhez hívjuk a ' rowWiseSorting() ” úgy, hogy a main() metódusban argumentumként adjuk át a tömböt:



nyilvános statikus üres fő- ( Húr [ ] args ) {
int arr [ ] [ ] = új int [ ] [ ] {
{ 12 , 14 , 4 } ,
{ 14 , 23 , húsz } ,
{ 28 , 25 , 8 } ,
{ tizenegy , 5 , 1 } } ;
rowWiseSorting ( arr ) ;
}
}

Amint látja, a tömbünket növekvő sorrendbe rendeztük:

Ki szeretné próbálni az oszlopok szerinti rendezést Java nyelven? Vessen egy pillantást a következő szakaszra.

2. módszer: 2D tömb oszloponkénti rendezése Java nyelven

A 2D tömb oszlop szerinti rendezéséhez Java nyelven hívja a „ Arrays.sort() ' módszer egy ' Összehasonlító felület ”. A Comparator interfész egy ' összehasonlítani () ” módszer, amely elfogad két paramétert, majd összehasonlítja azokat egymással. Ha az átadott paraméterek egyenlőek, akkor nullát ad vissza. Ha az 1. paraméter nagyobb, mint a 2. paraméter, akkor pozitív értéket ad vissza. Ha nem, akkor negatív értéket ad vissza.

Példa
Ebben a példában létrehozunk egy '' nevű metódust oszlopWiseSorting() 'két argumentummal, egy 2D tömb' arr[][] ' és egy '' nevű oszlopszám áttekintés ”. Ezután hívja a ' Arrays.sort() ' módszer a ' Összehasonlító felület ” egy oszlop értékeinek összehasonlításához. Végül kinyomtatjuk a tömb rendezett oszlopának értékeit a „ számára ” hurkok:

statikus üres oszlopWiseSorting ( int arr [ ] [ ] , int áttekintés ) {
Tömbök. fajta ( arr , új Összehasonlító < int [ ] > ( ) {
nyilvános int összehasonlítani ( int [ ] első , int [ ] scnd ) {
ha ( első [ áttekintés - 1 ] > scnd [ áttekintés - 1 ] ) {
Visszatérés 1 ;
}
más Visszatérés - 1 ;
}
} ) ;
}
számára ( int én = 0 ; én < arr. hossz ; én ++ ) {
számára ( int j = 0 ; j < arr [ én ] . hossz ; j ++ ) {
Rendszer. ki . nyomtatás ( arr [ én ] [ j ] + ' ' ) ;
}
Rendszer. ki . println ( ) ;
}

A már létrehozott '' nevű tömböt fogjuk használni arr ', és adja át a ' oszlopWiseSorting() ' első paraméterként és ' 1 ” második paraméterként:

oszlopWiseSorting ( arr , 1 ) ;

A fent megadott program végrehajtása a 2D tömb első oszlopát rendezi:

Összegyűjtjük az összes lényeges információt a 2D tömb Java nyelven történő rendezéséhez.

Következtetés

Java nyelven a 2D tömb a követelményeknek megfelelően soronként vagy oszloponként rendezhető. Soronkénti rendezéshez csak az Array.sort() metódus kerül felhasználásra; oszloponkénti rendezésnél azonban az Array.sort() metódus a Comparator felülettel meghívásra kerül. Soronkénti rendezésnél nem adunk át paramétert az Array.sort() metódusnak, míg az oszloponkénti rendezésnél a rendezendő oszlopok számát paraméterként említik. Ez az oktatóanyag a 2D tömb Java nyelven történő rendezésének módszereit tárgyalta példákkal.