Backtracking Algorithmus
-
Hey Leute,
es geht weniger um ein C Problem sondern eher um ein Problem mit einem Algorithmus den ich geschrieben habe, der allerdings nicht richtig funktionieren will.
Allerdings möchte ich hier nicht den ganzen Quellcode posten, weil es quasi Hausaufgabe ist und ich keine Lösungen veroffentlichen darf.
Am liebsten würde ich jemandem den Code eher als PN schicken und der schaut dann mal drüber. Kann eigentlich nur ein kleiner Fehler dein den ich aber seit Stunden nicht wirklich finden kann.Ich werde aber mal versuchen das Problem einigermaßen zu schildern ohne den Quellcode zu posten:
Es geht darum, dass ein NxM großes Feld mit Zahlen von 0-M augefüllt werden soll.
Es gibt natürlich noch ein paar Bedingungen die erfüllt werden sollen aber die sind jetzt nicht so wichtig.
Das Problem ist, wenn ich die erste Zeile erstmal ausgefüllt habe, soll in die zweite gegangen werden, bis erkannt wird dass etwas falsch ist.
Allerdings geht der Algorithmus dann nicht mehr in Zeile 1 also nimmt diese Entscheidungen nicht zurück und bleibt dementsprechend hängen.Hoffe mir kann jemand wenigstens nen Tipp geben was ein möglicher Fehler sein könnte.
Mfg Bad_Ace
-
for(int i=0;i<M;++i){ //step in ++pos; arr[pos]=i; //test position recursiverAufruf(); //trace back arr[pos]=0;//schätze, diese zeile fehlt --pos; }