Hallo,
das ist der erste Algorithmus, den ich umgesetzt habe, um einen TreeView zu durchsuchen (mal abgesehen davon, dass es solche Algorithmen genug als fertigen Quellcode gibt, ich möchte sie selber umsetzen, um daraus zu lernen).
Der Tree sieht folgendermaßen aus:
und der Algorithmus:
wobei anstelle von "Goal-Test" überprüft wird, ob "Node" ein Zielergebnis ist.
Beim Testen funktioniert der Algorithmus einwandfrei. Es werden nacheinander die Knoten A, B, C, D, E, F, G aufgerufen. Nun die Frage, ob das auch sauber programmiert ist und den Speicher und CPU nicht unnötig belastet (also nicht unnötiger, als es eine Breitensuche sowieso schon tut)?
Wäre dankbar für Antworten,
Grüße,
Thilo
das ist der erste Algorithmus, den ich umgesetzt habe, um einen TreeView zu durchsuchen (mal abgesehen davon, dass es solche Algorithmen genug als fertigen Quellcode gibt, ich möchte sie selber umsetzen, um daraus zu lernen).
Der Tree sieht folgendermaßen aus:
VB.NET-Quellcode
- Dim tn As New TreeNode
- With tn.Nodes.Add("A: Level 0, Node 0")
- With .Nodes.Add("B: Level 1, Node 0")
- .Nodes.Add("D: Level 2, Node 0")
- .Nodes.Add("E: Level 2, Node 1")
- End With
- With .Nodes.Add("C: Level 1, Node 1")
- .Nodes.Add("F: Level 2, Node 2")
- .Nodes.Add("G: Level 2, Node 3")
- End With
- End With
- Breadth_First_Search(tn)
und der Algorithmus:
VB.NET-Quellcode
wobei anstelle von "Goal-Test" überprüft wird, ob "Node" ein Zielergebnis ist.
Beim Testen funktioniert der Algorithmus einwandfrei. Es werden nacheinander die Knoten A, B, C, D, E, F, G aufgerufen. Nun die Frage, ob das auch sauber programmiert ist und den Speicher und CPU nicht unnötig belastet (also nicht unnötiger, als es eine Breitensuche sowieso schon tut)?
Wäre dankbar für Antworten,
Grüße,
Thilo