Metoda backtracking

Proiect
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 17 în total
Cuvinte : 2610
Mărime: 16.91KB (arhivat)
Publicat de: Dalia Miron
Puncte necesare: 6
Profesor îndrumător / Prezentat Profesorului: Argetoianu

Cuprins

  1. I. METODA BACKTRACKING
  2. 1. Prezentarea metodei pag 3
  3. 2. Aplicatii - „ Colorarea Hartilor” pag 5
  4. II. DIVIDE -ET- IMPERA
  5. 3. Prezentarea metodei pag 11
  6. 4. Aplicatii - ”Determinare cmmdc dintr-un vector” pag 13
  7. III. OPERATII CU VECTORI-PROCEDURI SI FUNCTII
  8. 1. Proceduri si functii -
  9. 1.Operatii cu vectori pag 16
  10. IV. BIBLIOGRAFIE pag 19

Extras din proiect

METODA BACKTRACKING

Tehnica folosita:Metoda Backtracking

Aceasta tehnica se foloseste in rezolvarea problemelor care indeplinesc simulltan urmatoarele conditii:

1 solutia lor poate fi pusa sub forma unui vector S=x1x2, ,xn cu x1 A1,x2 A2, ,xn An;

2 multimile A1,A2, ,An sunt multimi finite,iar elementele lor se considera ca se afla intr-o relatie de ordine bine stabilita;

3 nu se dispune de alta metoda de alta metoda de rezolvare mai rapida

Observatii:

1 nu pentru toate problemele n este cunoscut de la inceput;

2 x1,x2, ,xn pot fi la randul lor vectori;

3 in multe probleme,multimile A1,A2, ,An coincid ;

La intalnirea unei astfel de probleme,daca nu cunoastem aceasta tehnica,suntem tentati sa generam toate elementele produsului cartezian A1*A2* *An si fiecare element sa fie testat daca este solutie.

Rezolvand problema in mod,timpul de executie este atat de mare incat poate fi considerat infinit,algoritmul neavand nici o valoare practica.

De exemplu,daca dorim sa generam toate permutarile unei multimi finite A,nu are rost sa generam produsul cartezian A*A* *A,pentru ca apoi,sa testam,pentru fiecare element al acestuia,daca este sau nu permutare(nu are rost sa generam 1,1,1, ,1,pentru ca apoi sa constatam ca nu am obtinut o permutare,cand de la a doua cifra1 ne putem da seama ca cifrele nu sunt distincte).

Tehnica Backtrahing are la baza un principiu extrem de simplu:

1 se construieste solutia pas cu pas:x1,x2, ,xn;

2 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 p care am ramas.

Start

K:=1;st[k]:=0;

Se citeste n

NU DA

k>0

Stop

NU Exista DA

K:=k-1 Succesor pe nivelul

K ?

DA Solutia NU

Partiala este

Valida?

NU Este DA

K:=k+1; solutie finala? Tipareste sol.

St[k]:=0;

Figura 1.schema logica a metodei backtracking

ENUNTUL PROBLEMEI :

Se dau n tari si m culori. Sa se afiseze toate posibilitatile de colorare a hartilor,astfel incat doua tari vecine sa nu aiba aceeasi culoare.

SURSA PROGRAMULUI CARE REZOLVA ACEASTA PROBLEMA

Program tari;

type stiva=array[1 10]of integer;

matrice=array[1 10,1 10] of integer

var st:stiva;

a:matrice;

k,n,i,j,m:integer;

as,ev:boolean;

PROCEDURE init(var st:stiva;k:integer);

begin

st[k]:=0;

end;

PROCEDURE succesor(var st:stiva;var as:boolean;k:integer);

Preview document

Metoda backtracking - Pagina 1
Metoda backtracking - Pagina 2
Metoda backtracking - Pagina 3
Metoda backtracking - Pagina 4
Metoda backtracking - Pagina 5
Metoda backtracking - Pagina 6
Metoda backtracking - Pagina 7
Metoda backtracking - Pagina 8
Metoda backtracking - Pagina 9
Metoda backtracking - Pagina 10
Metoda backtracking - Pagina 11
Metoda backtracking - Pagina 12
Metoda backtracking - Pagina 13
Metoda backtracking - Pagina 14
Metoda backtracking - Pagina 15
Metoda backtracking - Pagina 16
Metoda backtracking - Pagina 17

Conținut arhivă zip

  • Metoda Backtracking.doc

Alții au mai descărcat și

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Placa de Bază

Caracteristici generale ale placii de baza Placa de baza este un dizpozitiv ‘de baza’ un ‘pamânt’ pe care ‘se planteaza’ celelalte componente ....

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Te-ar putea interesa și

Backtracking Recursiv

1. METODA BACKTRACKING 1. 1. Stiva Stiva este acea formã de organizare a datelor ( structurã de date ) cu proprietatea cã operatiile de...

Turbo Pascal - metoda backtracking - tehnica Greedy

Aparitia limbajului Pascal este un raspuns la criza care a aparut in domeniul programarii calculatoarelor , la sfarsitul anilor ’60 . Limitarile...

Metoda backtracking

Metoda backtracking se utilizeaza pentru rezolvarea unor probleme in care: - se obtin mai multe solutii; -solutia este formata din unul sau mai...

Problema celor 8 regine

1. Sarcina lucrării Să se scrie un program ce rezolvă următoarea problema: Problema celor 8 dame:Se cere să se găseasca toate soluţiile de...

Metoda backtracking

CAPITOLUL 1: ASPECTE TEORETICE Această tehnică se foloseşte în rezolvarea problemelor care îndeplinesc simultan următoarele condiţii: • soluţia...

Metoda backtracking - plată unei sume de bani

I.1.Notiuni introductive Limbajul Turbo Pascal a aparut la inceputul anilor ’70 si a fost elaborat de matematicianul N. Wirth. Initial limbajul a...

Problemă labirint - Turbo Pascal

1 Metoda backtracking Stiva este acea forma de organizare a datelor (structura de date ) cu proprietatea ca operatiile de introducere si scoatere...

Metoda backtracking

Metoda Backtracking - metoda „revenirii”, definită şi elaborată de AI (Artificial Intelligence); este o metodă folosită în cazul problemelor în...

Ai nevoie de altceva?