Java で 2 次元配列をソートする方法

Java De 2 Ci Yuan Pei Liewosotosuru Fang Fa



2 次元または 2D 配列は、列と行のコレクションです。プログラマーは、インデックスを利用して、2D 配列要素または各セルに個別にランダムにアクセスできます。並べ替えの助けを借りて、配列要素は要件に従って昇順または降順で配置されます。より具体的には、Java「 配列.ソート() 」は、プログラム内の 2D 配列の要素に使用できます。

このチュートリアルでは、Java で 2D 配列をソートする方法について説明します。

Javaで2D配列をソートする方法は?

Java では、次を使用して 2D 配列をソートできます。







ここで、前述の各方法について 1 つずつ説明します。



方法 1: Java での 2D 配列の行単位の並べ替え

行ごとの並べ替えでは、「 配列.ソート() 」メソッドを使用して、配列要素をソートします。特定の行の各要素を繰り返し、現在の要素が次の要素よりも大きい場合に整数を交換します。



実装側を理解するために例を見てみましょう。






この例では、まず静的メソッドを作成します。 rowWiseSorting() 」を呼び出して配列を昇順でソートするには、「 配列.ソート() 」メソッドを使用して配列のソートされた要素を出力し、「 為に 」 ループ:

静的 整数 行ごとの並べ替え ( 整数 到着 [ ] [ ] ) {
為に ( 整数 = 0 ; < 到着 長さ ; ++ ) {
配列。 選別 ( 到着 [ ] ) ;
}
為に ( 整数 = 0 ; < 到着 長さ ; ++ ) {
為に ( 整数 j = 0 ; j < 到着 [ ] . 長さ ; j ++ ) {
システム。 アウト . 印刷する ( 到着 [ ] [ j ] + ' ' ) ;
}
システム。 アウト . println ( ) ;
}
戻る 0 ;
}

ここに、「」という名前の 2D 配列があります。 到着 」を 3×3 行列形式 (3 行 3 列) で表します。ここで、作成された配列の行をソートするために、メソッド「 rowWiseSorting() 」 main() メソッドで引数として配列を渡すことにより:



公衆 静的 空所 主要 ( [ ] 引数 ) {
整数 到着 [ ] [ ] = 新着 整数 [ ] [ ] {
{ 12 14 4 }
{ 14 23 20 }
{ 28 25 8 }
{ 十一 5 1 } } ;
行ごとの並べ替え ( 到着 ) ;
}
}

ご覧のとおり、配列を昇順で並べ替えました。

Java で列単位の並べ替えを試してみませんか?次のセクションを見てください。

方法 2: Java での 2D 配列の列方向の並べ替え

Java で 2D 配列を列方向に並べ替えるには、「 配列.ソート() ” を含むメソッド コンパレータインターフェース 」。 Comparator インターフェイスは、「 比較() 」 2 つのパラメーターを受け取り、それらを互いに比較するメソッド。渡されたパラメータが等しい場合、ゼロを返します。 1 番目のパラメーターが 2 番目のパラメーターより大きい場合、正の値を返します。そうでない場合は、負の値が返されます。


この例では、「」という名前のメソッドを作成します。 columnWiseSorting() ” 2 つの引数を持つ 2D 配列 “ 到着[][] 」と「」という名前の列番号 概要 」。次に、「 配列.ソート() ” を使用したメソッド コンパレータインターフェース 」を使用して、列の値を比較します。最後に、「」を使用して、配列のソートされた列の値を出力します。 為に 」 ループ:

静的 空所 columnWiseSorting ( 整数 到着 [ ] [ ] 整数 概要 ) {
配列。 選別 ( 到着 新着 コンパレータ < 整数 [ ] > ( ) {
公衆 整数 比較 ( 整数 [ ] 最初 整数 [ ] scnd ) {
もしも ( 最初 [ 概要 - 1 ] > scnd [ 概要 - 1 ] ) {
戻る 1 ;
}
そうしないと 戻る - 1 ;
}
} ) ;
}
為に ( 整数 = 0 ; < 到着 長さ ; ++ ) {
為に ( 整数 j = 0 ; j < 到着 [ ] . 長さ ; j ++ ) {
システム。 アウト . 印刷する ( 到着 [ ] [ j ] + ' ' ) ;
}
システム。 アウト . println ( ) ;
}

「」という名前の既に作成された配列を利用します 到着 」に渡し、「 columnWiseSorting() 」を最初のパラメータとして、「 1 」を 2 番目のパラメーターとして:

columnWiseSorting ( 到着 1 ) ;

上記のプログラムを実行すると、2D 配列の最初の列がソートされます。

Java で 2D 配列をソートするために必要なすべての情報をコンパイルします。

結論

Java では、必要に応じて、2D 配列を行方向または列方向に並べ替えることができます。行単位のソートでは、Array.sort() メソッドのみが使用されます。ただし、列方向の並べ替えでは、Array.sort() メソッドが Comparator インターフェイスで呼び出されます。行方向の並べ替えの場合、Array.sort() メソッドにパラメーターは渡されませんが、列方向の並べ替え方法では、並べ替える必要がある列の数がパラメーターとして指定されます。このチュートリアルでは、Java で 2D 配列を並べ替える方法について例を挙げて説明しました。