Documente Academic
Documente Profesional
Documente Cultură
Enuntul problemei:
3 misionari i 3 canibali se afl pe unul dintre malurile unui ru, mpreun cu o barc ce poate
transporta la un moment dat unul sau doi oameni. Se cere s se gseasc o modalitate de a-i
transporta pe toi pe cellalt mal, fr a permite la vreun transport ca numrul de canibali dintr-
o locaie s depeasc numrul de misionari.
Definire:
Este un algoritm recursiv care foloseste ideea backtracking-ului. Implica cautari exhaustive a tuturor
nodurilor mergand inainte daca este posibil, altfel prin backtracking.
Natura recursiva a acestei strategii poate fi implementata utilizand stive. Ideea de baza consta in
alegerea unui nod de start si adaugarea tuturor nodurilor adiacente in stiva.
Dupa se elimina un nod din stiva pentru a se selecta urmatorul nod de vizitat si se adauga nodurile
adiacente acestuia in stiva.
Acest proces se repeta pana cand stiva este goala. Dar trebuie sa se asigura ca nodurile vizitate sa fie
marcate. Asta ajuta la revizitarea unor noduri care au fost deja parcurse, astfel evitandu-se formarea
unei bucle infinite.
Este unul din cele mai folosite tehnici folosite in cautarea caii sau traversare de graf.
Spre deosebire de tehnica de mai sus aceasta este mai inteligenta, deoarece gaseste calea
corecta de parcurgere a unui graf/arbore/etc care sa aiba costul minim reducand astfel
resursele utilizate in parcurgerea acestuia.
Aceasta tehnica se bazeaza pe functia euristica cu ajutorul careia programul deduce calea cea
mai eficienta.