Code:
seq: m m r t f f f
cnt: 1 2 1 1 1 2 3
rev: 2 1 1 1 3 2 1
rng: 6 4 3 2 3 2 1
res: m m r [color=#ff003f][size=18][b]F[/b][/size][/color] f f f
das F ist falsch.
Das PRoblem ist, die Tabelle die Du verwendest, ist nur für den ersten Buchstaben gültig.
Die Fortgeschriebenen Häufigkeiten sind nur gültig, wenn man den ersten Buchstaben berechnen will.
Wenn man den zweiten Buchstaben berechnet, dann gelten ja andere fortgeschriebenen Häufigkeiten.
(Ob man bei meinem Algorithmus von vorn oder von hinten anfängt, ist egal)
in meinem Beispiel könnte man auch von vorn berechnen:
Delphi-Quellcode:
for i := 0 to len -1 do
begin
st := copy(Eingabe, i+1, len -i);
ausgabe := ausgabe + Ermittle(st) ;
end; // for
anstatt:
Delphi-Quellcode:
for i := 0 to len -1 do
begin
st := copy(Eingabe, len -i, i+1);
ausgabe := Ermittle(st) + ausgabe;
end; // for
Das ist egal.
Ich dachte halt nur, wenn man von hinten anfängt, könnte man eventuell schon ergebnisse nutzen .. irgendwie .. vielleicht halt.
Also eventuell ..
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.