Gerichtete Graphen
-
Hallo
Ich muss die Verbindungen von gerichteten Graphen untersuchen.
Gegeben sind die Eckpunkt (1,2,3,4....) und die Kanten (1->2, 5->3, ....). Nun muss ich z.B. überprüfen, ob zwischen Ecke 2 und 4 eine Verbindung besteht,
Ich habe gelesen, dass man dieses Problem elegant mit RGL lösen kann.Hat jemand dazu ein Howto bzw. Sample?
Danke im Voraus
mfg
-
Ich würde es mit Breiten- oder Tiefensuche lösen:
stack<int> nodes; nodes.push(start); while(!nodes.empty() && nodes.top()!=ziel) t=nodes.top();nodes.pop(); besucht[t]=true for each(t1:t->t1 im Graph) if(!besucht[t1]) nodes.push(t1); if(nodes.empty() print("keine Verbindung") else print("Verbindung gefunden")
(das ist die Tiefensuche - für die Breitensuche verwendest du eine queue<int> statt des stacks)