-
Forum: Programmieren allgemein
by stoxx,
8. Mär 2006
Hi Marabu,
naja .. dann werde ich es wohl bei dem schlechten Laufzeitverhalten belassen müssen. Hatte gehofft, dass es vielleicht eine Abkürzung gäbe.
Als Referenz bietest du mir deinen Code an. Ich habe ihn analysiert und musste als erstes festgestellen, dass du jeweils den ersten Buchstaben eines Abschnittes nicht in die Häufigkeitszählung (CountArray) einfließen lässt.
Da hast Du doch...
-
Forum: Programmieren allgemein
by stoxx,
4. Mär 2006
richtig
mit Häufigkeit ist die Anzahl der Vorkommen eines Buchstaben gemeints.
ähm, nochmal, versteh ich nicht ..
-
Forum: Programmieren allgemein
by stoxx,
4. Mär 2006
Hi Marabu,
das Ergebnis stimmt, denn bei der x Berechnung (seit x000x beginnt die Zählung bei Null, achtung !) wird: b c c a a herangezogen und da kommt "c" zweimal drin vor.
Da kein anderer Buchstabe bis zum Ende dreimal vorkommt, bleibt c der Sieger bis zum Schluß. Das meinte ich ja damit, dass die Häufigkeitszählungen immer neu gemacht werden müssen.
-
Forum: Programmieren allgemein
by stoxx,
4. Mär 2006
Hi x000x !
Deine Darstellung ist richtig ! :-) Danke !
Das hast Du komplett richtig verstanden, so soll es sein, weil die Darstellung so gut war, hab ich es mal für das Beispiel
a a b b c c a a gemacht.
1.
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
das t wird vom f "noch" nicht verdrängt.
t wird von 4 bis 7 berechnet
t -> t ist einmal vorhanden, t hat Spannweite von 1
tf -> t ist einmal vorhanden, t hat Spannweite von 2
f ist einmal vorhanden, f hat Spannweite von 1
tff - f wird am häufigsten, Spannweite von 1 !! ab hier fängt die Zählung an für f (siehe Definition ganz oben)
t ist einmal vorhanden, Spannweite...
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
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 F f f f
das F ist falsch.
Das PRoblem ist, die Tabelle die Du verwendest, ist nur für den ersten Buchstaben gültig.
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
jaaa ... ;-) Maßgeblich ist der Quelltext, das soll rauskommen.
Mein Quelltext hab ich so gestaltet, dass man ihn gut debuggen kann und sieht was rauskommt, und mit welchen Werten er arbeitet.
Die Aufgabentellung ist kein Lehrbuchbeispiel, sondern eine Problem aus meiner eigenen Praxis.
Dein Beispiel ist da auch nicht richtig:
richtig ist: (also genau die gleiche Sequenz als ergebnis)
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
das hab ich jetz beim erstellen des Beispiels auch gemerkt. Also hier der Algorithmus mit Komplexitet n * (n-k)
O(n^2) ist das dann wohl ?
Ich habe mich in meinem Einführungsbeispiel vertan. Der Algorithmus ist aber eigentlich richtig beschrieben.
Es ist im Prinzip eine Bestimmung irgendeines Maxwertes zweimal hintereinander.
für mmrtfff kommt immernoch mmrtfff raus.
Interessant wird es...
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
In meinem Beispiel hast Du ein wenig Recht, das zweite m von Dir ist richtig ( wenn man die Häufigkeit von eins mit beachtet) kleiner Fehler von mir.
Die Tabellen ( oder Zustände) sind nur für die Berechnung von einem einzigen Schritt korrekt. Das ist das blöde daran.
Bei sowas wird es dann interessant, und man muss jeden Schritt berechnen ... , m m r t f f f y m m x x x x
überleg .... ...
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
Hi Du,
Danke :-) .. ich hatte gehofft, dass Du das Problem vielleicht entdeckst.
das ist nicht richtig, denn z.B. x wird berechnet von a bis a, also aus der Sequenz f f f y x x x x x.
Da "f" bis zu a der häufigste Buchstabe ist (nämlich 3 mal), ist dessen Länge der Gültigkeit am längsten ( Länge 7)
Es wird im Prinzip so lange gewertet, solange ein Buchstabe der "Sieger" ist.
Ich...
-
Forum: Programmieren allgemein
by stoxx,
3. Mär 2006
Ich hab hier ein problem, was ich irgend´wie nicht zufriedenstellend lösen kann und da ich schon einen Knoten im Kopf habe, wollte ich einfach mal fragen.
Ich möchte es mal formulieren.
Ich habe es im Gefühl, dass es da eine schnellere Lösung geben muss, aber komm nicht so recht drauf,... vielleicht täuscht mich auch mein Gefühl.
Das Verfahren hätte normalerweise ein Laufzeitverhalten das...