Hallo zusammen,
ich brauche unbedingt Hilfe bei einer Aufgabe. Bei der ich einfach nicht richtig weiß, wie ich die Datenstruktur passend aufbauen soll.
Es geht um ein Straßennetz mit mehrern Kreuzungen die einfach Integer als Bezeichnung tragen. Von manchen Kreuzungen führen Wege zu der nächsten. Diese Wege gehen dabei immer nur in eine Richtung also es kann geschehen, dass ein Weg von A nach B geht aber nicht von B nach A. Jetzt soll ich ein Programm schreiben, dass mit den Weg von I nach J sucht oder feststellt, dass er nicht existiert. Der Weg soll dann also z.B. so ausgegeben werden: 3 5 18 45 9.
Folgende Bedingungen sind daran gestellt: Das ganze soll ueber eine Tiefensuche ablaufen. Dazu soll ein Feld visited verwendet werden, das angibt welche Kreuzungen bereits besucht wurden und einen Stack visit der noch zu besuchenden Kreuzungen.
Also das Straßennetz habe ich jetzt als int[][] gespeichert. int[j] = 1 wenn ein Weg von i nach j existiert. Jetzt bin ich mir nicht ganz klar darueber ob ich eine Klasse Kreuzung erzeugen muss, aber ich denke schon. Aber wie soll ich diese Kreuzungen dann in einem Stack ordnen, wo ich doch nur auf das letzte Element zugreifen kann. Ab diesem Punkt bin ich jetzt total überfordert.
Und für jeden Tipp bin ich dankbar.
Grüße,
quodlibet
ich brauche unbedingt Hilfe bei einer Aufgabe. Bei der ich einfach nicht richtig weiß, wie ich die Datenstruktur passend aufbauen soll.
Es geht um ein Straßennetz mit mehrern Kreuzungen die einfach Integer als Bezeichnung tragen. Von manchen Kreuzungen führen Wege zu der nächsten. Diese Wege gehen dabei immer nur in eine Richtung also es kann geschehen, dass ein Weg von A nach B geht aber nicht von B nach A. Jetzt soll ich ein Programm schreiben, dass mit den Weg von I nach J sucht oder feststellt, dass er nicht existiert. Der Weg soll dann also z.B. so ausgegeben werden: 3 5 18 45 9.
Folgende Bedingungen sind daran gestellt: Das ganze soll ueber eine Tiefensuche ablaufen. Dazu soll ein Feld visited verwendet werden, das angibt welche Kreuzungen bereits besucht wurden und einen Stack visit der noch zu besuchenden Kreuzungen.
Also das Straßennetz habe ich jetzt als int[][] gespeichert. int[j] = 1 wenn ein Weg von i nach j existiert. Jetzt bin ich mir nicht ganz klar darueber ob ich eine Klasse Kreuzung erzeugen muss, aber ich denke schon. Aber wie soll ich diese Kreuzungen dann in einem Stack ordnen, wo ich doch nur auf das letzte Element zugreifen kann. Ab diesem Punkt bin ich jetzt total überfordert.
Und für jeden Tipp bin ich dankbar.
Grüße,
quodlibet