Javaの:配列をソートするために選択ソート方法

最近は、学習アルゴリズムのJavaの練習をしたいし、その後、実際には、配列の先頭は、あなたが走り書きからソートされ表示されませんでした、小さな問題から重複したエントリを削除LeetCodeにソートされた配列を打つかのためのアウトよりもソートツリーグループ、シャンハオは多くを書く感じ。そして、私は配列をソートするために、バブル法の下で確認したかった、あなたのズボンの座席を書き、ええと......最終的な選択は、ソートとなっている書いた......

バブルシンプルかつ選択的なソート方法を紹介。

バブル法は、徐々に(一番)最後の最大値を取得し、最小(最後)の前に、ほとんどを取得するには、対比較ペアごと交換です。多くのオンライン例があります。

選択ソート方法は、(最後)の前に最も最小にするたびに選択し、次に内部残数から最小の内部と第2の場所に(第2の最後に)選択されます。

1つの パブリック クラスソリューション{
 2      公共 静的 ボイドメイン(文字列[]引数){
 3          のint [] NUMS = {10、12 ,. 6 ,. 4 ,. 8 ,. 3 ,. 7、23で、65であり、12れる};
 4          int型 Iは0 =;私はnums.lengthを<; Iは++){            // 最初のループの
5              int型のn-NUMS = [I] = I、変更;         //はループが何かを必要とするための第二の定義
6。             ためINT I = J; J <nums.length - 1; J ++){    // 各時刻jは=私は、何をしたいように、i番目の場所であり、後私は最小のビットを選択
7。                 IF(NUMS [J 。1 + <N-){                     //nより次に小さい場合、に等しいNせ、nについてループの終了時に最小である
8。                      N = NUMS [Jの+ 1 ];
 9                  }
 10                  のためにINT X = 0; X <nums.length; X ++) {    // ループのための役割がビットの最小数を見つけることであるとレコードとその
11。                     IF - (N == NUMS [X]){
 12は                          =の; X
 13は                     }
 14                  }                                          // ための内側端部
15              }                                              // アウター用端
16              変更NUMSは= [I]。                             // 最小と交換
。17              NUMS [I]は= ; NUMS [A]
 18である              NUMS [A] = 変更を、
 19          }  
 20れている         ためINT X:NUMS){                               // foreachのアレイ出力
21である              のSystem.out。印刷( "" + X);
 22である         }
 23は、 
24      }
 25 }


たぶん私は無意識のうちに選択して、ソート......実行速度はかなり短いように、将来はこのような小さな実践のためのより多くなり、より明確にそれのいくつかを考えて感じました。

 

おすすめ

転載: www.cnblogs.com/qjqj0-0/p/11228407.html