FOO: Pivot Partitioning

Hallo
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 162
Registriert: 22. Apr 2015 19:03

FOO: Pivot Partitioning

Beitrag von Hallo »

Hallo,

Im WIKI steht man soll m2 (in Foo gleich i2) so initialisieren : Für j Element 1....n if s[j] = p increase m2 by 1. Kurz gesagt, für jedes Element im Array gleich dem Pivot Wert wird m2 (i2) um 1 erhöht.

cb2a4e385e98bc60b34bc67e088e9c10

In dieser Lösung von Foo bleibt aber i2 bei 0, obwohl es 3 Element gleich dem Pivot wert in dem Array gibt.
Habe ich was falsches verstanden?

Viele Grüße.

CryNickSystems
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 119
Registriert: 30. Apr 2015 18:27

Re: FOO: Pivot Partitioning

Beitrag von CryNickSystems »

Hallo hat geschrieben:[..] m2 (in Foo gleich i2) [..]
m2 und i2 sind aber schon unterschiedliche Variablen :P

i2 wird mit m1 initialisiert und wird danach angepasst, sodass es auf die Partition zeigt, die ein "falsches" Element beinhaltet.
i2 zeigt auf alle Elemente gleich dem Pivotwert. Ergo:
Algowiki hat geschrieben:While i2 < m2 and S[i2] = p set i2 = i2 + 1

Antworten

Zurück zu „Archiv“