Prezentarea Tehnicii Backtraking

Previzualizare referat:

Extras din referat:

Aceasta tehnica se foloseste in rezolvarea problemelor care indeplinesc simultan urmatoarele conditii: multimile A1, A2, A3 An sunt multimi finite, iar elementele lor se considera ca se afla intr-o relatie de ordine bine stabilita La intalnirea unei astfel de probleme, daca nu cunoastem aceasta tehnica, suntem tentati sa generam toate elementele produsului cartezian A1 (A2 (A3 (An si fiecare element sa fie testat daca este solutie. Rezolvand problema in acest mod, timpul de executie este atat de mare, incat poate fi considerat infinit, neavand nici o valoare practica.

De exemplu, daca dorim sa generam toate permutarile unei multimi finite A, nu are rost sa generam produsul cartezian A1A2A3 An pentru ca apoi, sa testam, pentru fiecare element al acestuia, daca este sau nu permutare. Tehnica Backtracking are la baza un principiu extrem de simplu: se construieste solutia pas cu pas: x1x2x3 xn; daca se constata ca, pentru o valoare aleasa, nu avem cum sa ajungem la solutie, se renunta la acea valoare si se reia cautarea din punctul in care am ramas Concret: se alege primul element x1 ce apartine lui A1 presupunand generate elementele x1, x2, x3 xk apartinand multimilor A1 A 2A3 Ak+1 se alege (daca exista) x, primul element disponibil din multimea Ak+1, apar astfel 2 posibilitati: nu s-a gasit un astfel de element, caz in care se reia cautarea considerand generate elementele x1, x2, x3 xk+1 iar aceasta se reia de la urmatorul element al multimii Ak ramas netestat a fost gasit, caz in care se testeaza daca acesta indeplineste anumite coditii de continuare, aparand astfel alte doua posibilitati: 2. 1) le indeplineste, caz in care se testeaza daca s-a ajuns la solutie si apar din nou doua posibilitati 2. 1. 1) s-a ajuns la solutie, se tipareste solutia si se reia algoritmul considerand generate elementele x1, x2, xk (se cauta in continuare un alt element al multimii Ak+1 ramas netestat) 2. 1. 2) nu s-a ajuns la solutie, caz in care se reia algoritmul considerand generate elementele x1, x2, x3 xk+1 si se cauta un prim element xk+2 (Ak+2 2. 2) nu le indeplineste caz in care se reia algoritmul considerand generate elementele x1x2 x3 xk iar elementul xk+1 se cauta intre elementele multimii Ak+1 ramase netestate.

Algoritmul se termina atunci cand nu mai exista nici un element x1 (A1 netestat.

Observatie: tehnica Backtracking are ca rezultat obtinerea tuturor solutiilor problemei. In cazul in care se cere o singura solutie se poate forta oprirea atunci cand a fost gasita.

Pentru usurarea intelegerii metodei, vom prezenta o rutina unica aplicabila oricarei probleme, rutina care utilizeaza notiunea de stiva. Rutina va apela proceduri si functii care au totdeauna acelasi nume si parametri si care din punct de vedere al metodei realizeaza acelasi lucru. Sarcina rezolvitorului este de a scrie explicit pentru fiecare problema in parte procedurile si functiile apelate de Backtraking. Evident, o astfel de abordare conduce la programe lungi. Nimeni nu ne ...

Download referat

Primești referatul în câteva minute,
cu sau fără cont

Alte informații:
Tipuri fișiere:
doc
Diacritice:
Nu
Nota:
8/10 (3 voturi)
Anul redactarii:
2007
Nr fișiere:
1 fisier
Pagini (total):
4 pagini
Imagini extrase:
3 imagini
Nr cuvinte:
676 cuvinte
Nr caractere:
3 668 caractere
Marime:
6.07 KB (arhivat)
Nivel studiu:
Gimnaziu
Tip document:
Referat
Materie:
Informatica
Data publicare:
26.12.2009
Structură de fișiere:
  • Prezentarea Tehnicii Backtraking
    • Referat.doc
Predat:
la gimnaziu

Ai gasit ceva în neregulă cu acest document?

Te-ar putea interesa și:
Se creeaza o lista dublu inlantuita care calculeaza valoarea unui polinom de grad n. Se citesc...
Aceasta tehnica se foloseste in rezolvarea problemelor care indeplinesc simultan urmatoarele...
Aceasta tehnica se foloseste in rezolvarea problemelor care indeplinesc simultan urmatoarele...
Aceasta tehnica se foloseste in rezolvarea problemelor care indeplinesc simultan urmatoarele...
ste inutil sa mai spunem ca traim astazi intr-o era a informaticii si a calculatoarelor. Ceea ce...
Sus!