整数の配列の最大の部分配列を返します。

 

 

 2.環状アレイ、時間複雑さが必要とされないが、唯一の要素ごとに一度使用することができます。しかし、この方法は一度だけ使用することができる、請求項の各要素を満たすことができない、次の書き込み小さな欠陥を有し、未だ解決する方法を知っていません。

1  パッケージday01;
 2  
。3  インポートjava.util.Scanner;
 4  
。5つの パブリック クラスFindMaxArray {
 6。 
7。     パブリック 静的 ボイドメイン(文字列[]引数){
 8。         // 自動的に生成されたスタブのTODO方法
9。         int型の長さ; // 定義配列の長さ長さ
10          INT N-; // 長さを変化させることの後に定義されたアレイ
11          のSystem.out.println(「配列要素の番号を入力してください」);
 12である          スキャナSC = 新しい新しいスキャナ(System.in);
 13は          長さ= sc.nextInt( );
 14         = 2 * N- 長;
 15          
16          INT [] = 新しい新しい INT [N-];
 17。          のSystem.out.println( "配列の要素を入力してください" );
 18である        
。19          INT I = 0; I <長さ。 ++ I 20は         、{
 21は、               [I] = sc.nextInt();
 22である         }
 23が         INT最大= [0 ];
 24          int型 SUM = 0; // 加算要素定義した後
25を         するためにINT I; I = 0 <長さ; I ++ 26である          {
 27            SUM = 0 ;
 28             INT J = I; J <I +長さ; J ++ 29             {
 30                SUM = SUM + A [j]は、
 31である               IF(SUM> MAX)
 32                {
 33が                   最大= SUM;
 34である               }
 35             }
 36            [I +長さ]は[I] =;     // 最終的に算出された数のたびに
37           }
 38で          のSystem.out.println( "サブ配列と最大である:" + MAX);
 39          SC。クローズ();
 40      
41は、 
42であります     }
 43  
44 }

スクリーンショットの営業成績:

 

おすすめ

転載: www.cnblogs.com/mxk123456/p/12380408.html
おすすめ