30.01.2015 Aufrufe

pdf, 387 KB

pdf, 387 KB

pdf, 387 KB

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Algorithmus MSP-2: Divide and Conquer - Verfahren<br />

(teile und herrsche (bearbeite))<br />

msp_2(X)<br />

Falls X nur 1 Element a enthält:<br />

falls a > 0 setze msp_2 ← a<br />

andernfalls setze msp_2 ← 0<br />

andernfalls<br />

S1: teile X in eine linke Teilfolge A und eine rechte Teilfolge<br />

B annähernd gleicher Größe<br />

S2: Bestimme die maximale Summe der Elemente einer<br />

zusammenhängenden Teilfolge, die beide Randelemente der<br />

Trennstelle enthält:<br />

a) Bestimme das rechte 'Randmaximum' maxRandA der<br />

linken Teilfolge A<br />

b) Bestimme das linke 'Randmaximum' maxRandB der<br />

rechten Teilfolge B<br />

c) Bestimme die Summe von a) und b) maxRandA/B<br />

S3: a) Bestimme die maximale Summe einer zusammenhängenden<br />

Teilfolge in A :<br />

max_in_A ← msp_2(A)<br />

b) Bestimme die maximale Summe einer zusammenhängenden<br />

Teilfolge in B :<br />

max_in_B ← msp_2(B)<br />

S4: msp_2 ← max (max_in_A, max_in_B, maxRandA/B)<br />

Algorithmus MSP-3: Inspektionsverfahren<br />

max_bis_jetzt ← 0 und maxRand ← 0<br />

für i ← 1, ..., n führe aus<br />

maxRand ← maxRand + X[i]<br />

falls maxRand < 0 dann maxRand ← 0<br />

falls max_bis_jetzt < maxRand<br />

dann max_bis_jetzt ← maxRand<br />

Algorithmen + Datenstrukturen SS 2010 23.03.10 10 von 75

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!