Seite 1 von 1

Priorisierung der Exceptions

Verfasst: 13. Mai 2007 22:19
von ykaerflila
Hallo,

ich habe folgende Frage: Wenn in einem Graphen mit 2 Knoten diese jeweils mit einer Hin- und Rückkante miteinander verbunden werden, welche Exeception wird dann zu erst erwartet? Einen parallel-edges-Geschichte oder einen zylus-gefunden-Geschichte?

Ich werfe zuerst eine FileFormatException wegen den parallelen Kanten, glaube aber, dass da eher eine GraphContainsCycleException erwartet wird...

Gruß,
y.

Verfasst: 13. Mai 2007 22:56
von okula
Hallo y.,
glaube aber, dass da eher eine GraphContainsCycleException erwartet wird...
wie du gesagt hast, Ich glaube es wird auch ein GraphContainsCycleException geworfen. (so lange kein illegalle Format in den Input file gibt).

Verfasst: 13. Mai 2007 23:03
von ykaerflila
ich breche schon während dem einlesen ab, falls eine parallele kante gefunden wird. ist meiner meinung nach auch sinnvoller als trotzdem nocheinmal auf zyklus zu testen, wenn schon beim einlesen eine regelverletzung eintritt.

ps: pn für dich

Verfasst: 14. Mai 2007 15:59
von ykaerflila
ok ich hatte es wohl falsch verstanden. die "parallele kanten" geschichte im script hatte sich wohl nur auf ungerichtete bezogen. durch die partielle ordnung der kanten im gerichteten graohen löst sich das problem von selbst.

Verfasst: 15. Mai 2007 02:56
von tgp
Sind eigentlich die Kanten (e 2 3 0) und (e 2 3 0) parallel, sollten also eine Exception auslösen?

Verfasst: 15. Mai 2007 06:57
von ichnicht
tgp hat geschrieben:Sind eigentlich die Kanten (e 2 3 0) und (e 2 3 0) parallel, sollten also eine Exception auslösen?
Ja.

Verfasst: 15. Mai 2007 10:07
von Rookie
Sind diese Kanten (e 1 0 0) und (e 0 1 0) auch parallel? Bzw sollten wir da jetzt eine FileFormatException werfen?

Verfasst: 15. Mai 2007 10:20
von HolgerF
Nein, das ist ein Zyklus. Zumindest behandle ich es so, und das ist akzeptiert worden.

Verfasst: 15. Mai 2007 10:21
von Abo
Nein

Von Knoten A --> B
und von Knoten B --> A

damit ist ein Zyklus schon vorhanden

Parallel wäre, wenn A --> B und dann direkt danach oder irgendwann später wiedervorkommt A --> B, das wäre dann parallel

Verfasst: 15. Mai 2007 14:14
von Wang Tang
So, was anderes:
wenns die einzulesende Datei nicht existiert, sollen wir:
- nichts tun (FileNotFoundException wird automatisch geworfen..)
- abfangen -> IOException werfen
- abfangen -> FileFormatException werfen
?

Verfasst: 15. Mai 2007 14:19
von wach
Wang Tang hat geschrieben:So, was anderes:
wenns die einzulesende Datei nicht existiert, sollen wir:
- nichts tun (FileNotFoundException wird automatisch geworfen..)
- abfangen -> IOException werfen
- abfangen -> FileFormatException werfen
?
Sämtliche Lesefehler, die Java so mitbringt sind alles Erben von IOException ...

Kurz nachdenken ...

Dann erkennen, dass man dafür nichts machen muss.

Verfasst: 15. Mai 2007 14:49
von Wang Tang
autsch, danke..