Problem bei Logik für Algorithmus...

Naja, falls es vom Code her eine Möglichkeit gibt die Anzahl der Varianten abzufragen, wäre das kein großes Problem. Geht sowas?
 
Hallo CSANecromancer,

da war ich eben mit der Antwort zu langsam...

Also wie es aufgedröselt aussieht, ist mir schon klar, nur habe ich keinen Plan, wie ich diesen Algorithmus schreiben kann.
 
@Navy

also die Sache mit der Rekursionist auch gut, aber ich weiß weder wieviele Listen ich habe noch wieviele Varianten diese haben. Bei mir steht ja auch alles untereinander...

Probleme über Probleme...
 
Das habe ich mal schnell zusammengebastelt:

Solange nicht die letzte Alternative bearbeitet wurde:
b) -> Nimm die nächste Alternative und merke sie im Speicher
a)-> Gibt es Unteralternativen?
Wenn ja und nicht die letzte Unteralternative bearbeitet wurde:
-> Nimm die nächste Unteralternative und merke sie im Speicher
-> Springe zu a).
Wenn nein:
Zeige das an, was im Speicher gesammelt wurde.
Leere den Speicher.
Springe zu b).
 
Kein Problem.
Du musst im Grunde auch nicht wissen wie groß die Liste ist, sondern immer nur das nächste Elemente der Liste, und das musst Du auf existent prüfen:

Code:
typ liste
      element : list of strings;
      next : liste;
      
BacktraceListen(liste):wert;
{
  if liste not null do
  {
    for wert in element in liste do
    {
     BacktraceListen(liste.next)
    }
  }
}

Damit hast Du eine Überdeckung aller Element in den Listen. Das heißt, Du müsstes das noch anpassen (ggf in eine weitere Liste speichern).
 
Zuletzt bearbeitet:
@Navy

also die Sache mit der Rekursionist auch gut, aber ich weiß weder wieviele Listen ich habe noch wieviele Varianten diese haben. Bei mir steht ja auch alles untereinander...

Probleme über Probleme...
 
Hallo Navy,

ich glaub ich bin zu blöd dafür...

Wenn meine Liste (aus Deinem Bespiel) so aussieht (in Excel)

A
B1
B2
C
D1
D2
D3
E1
E2

Und ich darauf Deinen Algorithmus ansetze, wird mir die Liste dich einfach nur Rückwärts durchlaufen, oder?

Mein Ergebnis sollte jedoch folgendermaßen aussehen

A
B1
C
D1
E1
A
B1
C
D1
E2
...etc

Kannst Du mir vielleicht noch sagen, wo Du die Ausgabe des Listenwertes hinsetzen würdest bzw. wann DU welchen wert in eine Temp-Liste schreibst?

Danke nochmals
 

Neue Beiträge

Zurück