Forum: Algorithmen, Datenstrukturen und Klassendesign
by Jumpy,
7. Okt 2011
Im Gegenteil. Ich denke, dass alle die hier mitgeholfen haben, gerne wissen wollen was rauskommt.
Bzgl. der Sequenzen nochmal ein Beispiel
1 2 3 4 9 8 7 1 2 3 4 6 2 3 4 9 8 7
Du startest mit der 1 und kriegst die Kette 1 2 3 4 und findest die zweimal.
Wie gehts dann weiteer?
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Jumpy,
6. Okt 2011
Hallo Sebastian,
ich spar mir mal die Mühe, da zum einen meine Variante in jedem Fall mehr liefert als du eigentlich brauchst, nämlich alle möglichen Kombinationen und Längen von Sequenzen und zum anderen die Lösung von Sir Rufo auf der selben Kernidee beruht aber professioneller umgesetzt ist. Die Verwendung von Bytesequenzen (TBytes)(wußte gar nicht das es sowas gibt) erspart das mühsame...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Jumpy,
5. Okt 2011
Achso. Dann muss meine obige Lösung dahingehend angepasst werden, das z.B. alle Ketten, die nur aus einem Element bestehen nachher gelöscht werden, sowie auch alle Ketten mit mehr als einem Element, die aber nur einmal vorkommen.
Alternativ kann man natürlich direkt j erst bei 1 anfangen lassen und erst wenn Vorkommenzahl(Kette)>1 ist die Kette in die Liste aufnehmen. Mach das mal:
var:
...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Jumpy,
5. Okt 2011
Hallo hier mal als Denkansatz, so wie ich das Problem verstanden habe:
Array heißt bei mir das Hauptarray, das irgendwie übergeben wird oder global ist.
Tiefe, hier :=5 ist die maximale Ketten-Tiefe.
Edit: Statt der InListe-Funktion kann man auch eine Find-Funktion o.ä. der TStringList nehemn. Hab gerade kein Delphi, drum weiß ich nit, obs da was gab und wie das dann ggf. heißt.
Edit:...