Cách sắp xếp mảng 2d trong Java

Cach Sap Xep Mang 2d Trong Java



Mảng hai chiều hoặc 2D là một tập hợp các cột và hàng. Lập trình viên có thể truy cập ngẫu nhiên các phần tử mảng 2D hoặc từng ô riêng lẻ bằng cách sử dụng các chỉ mục của chúng. Với sự trợ giúp của sắp xếp, các phần tử của mảng được sắp xếp theo yêu cầu, cho dù theo thứ tự tăng dần hay giảm dần. Cụ thể hơn, Java “ Array.sort () ”Có thể được sử dụng cho các phần tử của mảng 2D trong một chương trình.

Hướng dẫn này sẽ thảo luận về cách sắp xếp các mảng 2D trong Java.

Làm thế nào để sắp xếp mảng 2D trong Java?

Trong Java, bạn có thể sắp xếp một mảng 2D bằng cách sử dụng:







Bây giờ chúng ta sẽ thảo luận về từng phương pháp được đề cập một.



Phương pháp 1: Sắp xếp theo hàng của Mảng 2D trong Java

Trong phân loại theo hàng, bạn có thể sử dụng “ Array.sort () ”Để sắp xếp các phần tử của mảng. Nó lặp lại từng phần tử của một hàng cụ thể và hoán đổi các số nguyên khi phần tử hiện tại lớn hơn phần tử tiếp theo.



Hãy xem một ví dụ để hiểu khía cạnh triển khai.





Thí dụ
Trong ví dụ này, đầu tiên chúng ta sẽ tạo một phương thức tĩnh “ rowWiseSorting () 'Để sắp xếp mảng theo thứ tự tăng dần bằng cách gọi' Arrays.sort () ”Của lớp Mảng và sau đó in các phần tử được sắp xếp của mảng bằng cách sử dụng“ ”Vòng lặp:

tĩnh int rowWiseSorting ( int arr [ ] [ ] ) {
( int tôi = 0 ; tôi < arr. chiều dài ; tôi ++ ) {
Mảng. loại ( arr [ tôi ] ) ;
}
( int tôi = 0 ; tôi < arr. chiều dài ; tôi ++ ) {
( int j = 0 ; j < arr [ tôi ] . chiều dài ; j ++ ) {
Hệ thống. ngoài . in ( arr [ tôi ] [ j ] + '' ) ;
}
Hệ thống. ngoài . println ( ) ;
}
trở về 0 ;
}

Ở đây, chúng tôi có một mảng 2D có tên là “ arr ”Của dạng ma trận 3 × 3 (ba hàng và ba cột). Bây giờ, để sắp xếp các hàng của mảng đã tạo, chúng ta sẽ gọi phương thức “ rowWiseSorting () ”Bằng cách chuyển mảng làm đối số trong phương thức main ():



công cộng tĩnh vô hiệu chính ( Sợi dây [ ] args ) {
int arr [ ] [ ] = Mới int [ ] [ ] {
{ 12 , 14 , 4 } ,
{ 14 , 23 , hai mươi } ,
{ 28 , 25 , số 8 } ,
{ mười một , 5 , 1 } } ;
rowWiseSorting ( arr ) ;
}
}

Như bạn có thể thấy, chúng tôi đã sắp xếp mảng của mình theo thứ tự tăng dần:

Bạn muốn thử tính năng sắp xếp theo cột trong Java? Hãy xem phần sau.

Phương pháp 2: Sắp xếp theo cột của Mảng 2D trong Java

Để sắp xếp theo cột một cách khôn ngoan Mảng 2D trong Java, hãy gọi “ Arrays.sort () ”Với một“ Giao diện so sánh ”. Giao diện Bộ so sánh xác định “ so sánh() ”Phương thức chấp nhận hai tham số và sau đó so sánh chúng với nhau. Nếu các tham số được truyền là bằng nhau, nó trả về giá trị không. Nếu tham số đầu tiên lớn hơn tham số thứ 2, nó sẽ trả về một giá trị dương. Nếu không, giá trị âm được trả về.

Thí dụ
Trong ví dụ này, chúng tôi sẽ tạo một phương thức có tên là “ columnWiseSorting () 'Với hai đối số, một mảng 2D' arr [] [] ”Và một số cột có tên“ tổng quát ”. Sau đó, gọi “ Arrays.sort () ”Với phương pháp“ Giao diện so sánh ”Để so sánh các giá trị của một cột. Cuối cùng, chúng tôi sẽ in các giá trị của cột được sắp xếp của mảng bằng cách sử dụng “ ”Vòng lặp:

tĩnh vô hiệu columnWiseSorting ( int arr [ ] [ ] , int tổng quát ) {
Mảng. loại ( arr , Mới Máy so sánh < int [ ] > ( ) {
công cộng int so sánh ( int [ ] đầu tiên , int [ ] scnd ) {
nếu ( đầu tiên [ tổng quát - 1 ] > scnd [ tổng quát - 1 ] ) {
trở về 1 ;
}
khác trở về - 1 ;
}
} ) ;
}
( int tôi = 0 ; tôi < arr. chiều dài ; tôi ++ ) {
( int j = 0 ; j < arr [ tôi ] . chiều dài ; j ++ ) {
Hệ thống. ngoài . in ( arr [ tôi ] [ j ] + '' ) ;
}
Hệ thống. ngoài . println ( ) ;
}

Chúng tôi sẽ sử dụng mảng đã được tạo có tên là “ arr ”Và chuyển nó cho“ columnWiseSorting () 'Là tham số đầu tiên và' 1 ”Là tham số thứ hai:

columnWiseSorting ( arr , 1 ) ;

Việc thực thi chương trình đã cho ở trên sẽ sắp xếp cột đầu tiên của mảng 2D của chúng ta:

Chúng tôi biên dịch tất cả thông tin cần thiết để sắp xếp mảng 2D trong Java.

Sự kết luận

Trong Java, một mảng 2D có thể được sắp xếp theo hàng hoặc theo cột tùy theo yêu cầu. Để sắp xếp theo hàng, chỉ sử dụng phương thức Array.sort (); tuy nhiên, trong sắp xếp theo cột, phương thức Array.sort () được gọi với giao diện Comparator. Đối với sắp xếp theo hàng, không có tham số nào được truyền cho phương thức Array.sort (), trong khi trong phương pháp sắp xếp theo cột, số cột cần được sắp xếp được đề cập dưới dạng một tham số. Hướng dẫn này thảo luận về các phương pháp sắp xếp mảng 2D trong Java với các ví dụ.