Javaの例_30挿入値がソートされた配列されています

1  / * 30 [プログラム番号】インサート30 
 2  タイトル:アレイの行は、良好な配列を有します。今、配列にそれの挿入元の法律に必要な数を入力します。 
3つの プログラム解析:最初の番号が最後の番号よりも大きいか否かを決定し、次いでケース考える場所後、この要素の挿入後の中間挿入の数、
 4  の数、ターン後退位置。
5  * / 
6  
。7  / * 分析
 8  (11の総; 1,3,5,7,9,11,13,15,17,19,21:* 1、例えば昇順に優れたアレイは、ありますそれを12 A)を挿入数、
 9  * 2、数(例えば10又は22)を挿入;
 10  最後の数よりも多い、全直接最後に排出されるので、その後、* 3、(1)22
 11  *(2)10を、次いでアレイ、11、13を挿入するように、すべてが動いて.. 他の数の後ろに
 12  * 4、位置を挿入し、ループのために使用======挿入するための余地を作るために戻す方法を決定することの困難、見つけるために、一つずつ横断[I] <= X < = A [I + 1]ここで、
 13  *、その後、中間変数tと移動する
 14  * * / 
15  
16  / *[注]
 17  *アレイの拡張アレイ= Arrays.copyOf(アレイ、Array.lengthと+ 1); // 拡張アレイ
 18は * * / 
19  
20  
21である パッケージの宿題、
 22である 
23ことである インポートjava.util.Arrays;
 24の インポートjava.utilのクラス.SCANNER;
 25  
26は、 パブリック クラス値30 {
 27  
28      公共 静的 ボイドメイン(文字列[]引数){
 29          // 12の整数配列サイズ宣言
30          INTを [] = {1,3,5,7,9 A 、11,13,15,17,19,21 };
 31          //は、インサートの数入力
32         System.out.println( "挿入する整数を入力してください" );
 33である         整数 X = 新しい新しいスキャナ(System.in).nextInt();
 34である         
35          // 鍵拡張のアレイ===比較
36          A = Arrays.copyOf (a.length + 1 );
 37          // 宣言は、整数配列の長さを表し
38はある         INT長= a.length;
 39          
40          // 挿入される比較は、配列の最後の番号の数よりも大きい
 41は //         のSystem.out .println([-a.length 1。]); 
42れる         IF(X> [長-2]){            // 最後よりX数の大きい
43は、              [-length 1] = X;
 44である         }
 45          {                           // Xは、最後の数未満である
 46              //はの位置を見つけるために配列添字の保存場所を宣言
47              のint = 0位置を48              // 反復挿入の位置を見つけることでなければならない
49              のためにINT I = 0、I <a.length; I ++ ){
 50                  IF(([I] <= X) - ([I + 1]> = X)){
 51が                      位置= I + 1;     //は、前の位置の数を見つけます。後に、全てがここに加え、間に挿入されるように1。
52が                     BREAK ;
 53である                 }
 54である             }
 55  //             // テスト
 56  //            System.out.println(位置)
57              
58              // 开始移动数据
59              INTは iは長さ=、iは>位置; i-- ){
 60                  [I-1] = [I-2 ]。                
61              }
 62              [位置] = X。
63          }
 64          // 输出数组
65          のためにINT iは= 0; I <a.length; iは++ ){
 66              System.out.print([I] +」 " )。
67          }
 68  
69          
70      }
 71  
72 }

 

おすすめ

転載: www.cnblogs.com/scwyqin/p/12315014.html