2017-04-19 15 views
-3

だから、配列内の次の入力がC/MIPSで最大の和の部分列を見つけるにはどうすればよいですか?

Array: {7 2 5 -3 3 6 -4 1} 

ようなものになるだろうとサブシーケンスが

Subseq: : 7 2 5 -3 3 6 

だろうと最大の合計に対する答えがそう20になり、正確に何が起こっていますここに。私は部分列の概念を理解していない。読んだ後、私は配列[0]で始まって配列[n]に行き、最大の数字を選んだと思ったが、それは数字が7の後に止まっていたはずなので、そうではないようだ。私は、サブシーケンスがこのユーザー入力配列で何をしているのか、混乱しています。

+0

私たちは、「私の宿題を説明し、」サイトではありません。あなたの先生に相談してください。あなたに教えて、質問があるかどうかを説明するのは彼の仕事です。 – Olaf

+0

@olafあなたがコンセプトを説明できるなら、私は宿題をすることができます。私はここで何が起こっているのか理解できません。なぜなら、私には答えが7になるはずです。なぜなら、数字が下がるとすぐにコードが停止するべきであるからです。私はあなたにそれをするよう頼んではいませんでしたが、あなたのコメント – CodeFreak

答えて

-1

あなたのタイトルは、あなたの質問に答える:サブ

の最大の和ですから、合計最大である配列内の要素を見つける必要があります。この場合、7 + 2 + 5-3 + 3 + 6 = 20

+0

に感謝していますが、誰かがそれについてどうやって行くのでしょうか。それに続く特定のアルゴリズムはありますか?一度それが負の数に達すると、それは止めるべきだと私は仮定しているので、それがどのようにチェックし続けるのか分からない。そのコメントがはっきりしているかどうかはわかりませんが、あなたが言ったことは分かります – CodeFreak

1

実際に彼が探しているのは、多くの値を合計したものです。それだけで上記の助けを借りた後、7

7 2 = 9 

7 2 5 = 14 

7 2 5 - 3 = 11 

7 2 5 - 3 3 = 14 

7 2 5 -3 3 6 = 20 
0

oを合計を与える7で ストップは、私の混乱の理由は、まさにサブシーケンスが何をしているかが不明であることでした。しかし、私は今、数字の最大のグループ化と一緒に追加していることを理解しています。数字の私の例では:

Array: {7,2,5,-3,3,6,-4,1} 

それは数字をとります

Answer: {7,2,5,-3,3,6}    //adds to = 20 

これは数字の連続したシーケンスの最大の和です。

簡単なサブシーケンスの別の例は次のようになります。

Array: {-5 -10 5 5 -5 -10} 
Answer:{5, 5} //it adds 5 and 5 because that is the largest continuous sequence (10) 
関連する問題