Einzelnen Beitrag anzeigen

Sendrix

Registriert seit: 5. Okt 2011
9 Beiträge
 
#1

gleiche Zahlenfolgen im Array untersuchen

  Alt 5. Okt 2011, 13:42
Guten Tag,

ich bin zwar kein Delphi Neuling mehr, allerdings treffe ich immer wieder auf Problemstellungen die ich alleine leider nicht lösen kann.

Aktuell habe ich das Problem das ich Arrayelemente miteinander vergleichen muß. Grundsätzlich natürlich keine große Aktion das eine mit dem anderen Element zu vergleichen.

In diesem Fall handelt es sich jedoch um Zahlenfolgen die in einem unsortierten Array of Byte verglichen werden sollen. Unsortiert weil die Position bzw. die Zahlenreihenfolge der Zahlen in dem Array wichtig sind bei der Weiterverarbeitung.

Beispiel: Als erstes soll untersucht werden ob das erste Element des Arrays ein weiteres mal im Array vorhanden ist. Wenn nein dann soll mit dem zweiten Element neu begonnen werden. Wenn ja soll untersucht werden ob das Element das auf das erste Element im Array folgt auch bei dem gefundenen Element als Nachfolger vorhanden ist. Wenn ja geht es dann weiter mit dem dritten Element. Ist das dritte Element das gleiche wie bei dem gefundenen Element wo bereits das erste und zweite Element übereinstimmen. Das soll dann immer so weitergehen bis zu definierbaren Tiefe.

Man erhält dann letztlich eine Übersicht ob Zahlenfolgen/ketten mehrfach in einem Array vorhanden sind und mit welcher Tiefe die Folgen identisch miteinander sind.

Ich habe es bereits mit verschachtelten For Schleifen versucht aber bei der Untersuchung ab der dritten Zahl komme ich nicht mehr weiter. ich verirre mich irgendwie in den Schleifen. Als nächstes habe ich versucht erst eine Kopie des Arrays anzulegen und mir dadurch mehr Übersicht erhofft. Allerdings komme ich auch hier nicht weiter. Immer wenn eine Zahlenfolgen doppelt vorhanden ist muß ja der nächste Wert verglichen werden und dadurch lande ich immer wieder bei einer unübersichtlichen und nicht funktionierenden For Schleifen Variante. Es gelingt mir auch nicht das ganze bis zu einer beliebigen Tiefe durchzuführen da ich für jede weitere Zahl eine neue For Schleife benötige.

Hoffe ich konnte das Problem einigermaßen verständlich beschreiben.

Ich glaube das ich mich ein wenig verirrt habe vor lauter Schleifen und würde mich über Hilfe sehr freuen.

Viele Grüße,
Sendrix
  Mit Zitat antworten Zitat