SlideShare a Scribd company logo
1 of 23
Botnarenco Veronica 1
Metoda reluării
Botnarenco Veronica 2
Ne amintim mai întîi tehnica Greedy
Datele iniţiale:
},,,{ 21 naaaA =
Soluţia problemei:
AxxxxX k ∈= ),,,,( 21 
Ideia tehnicii Greedy:
alegem cîte un element din mulţimea A şi îl
includem în vectorul X
mulţimea
vectorul
Botnarenco Veronica 3
Schema generală a algoritmului Greedy
while ExistaElemente do
begin
AlegeUnElement(x);
IncludeElementul(x);
end
Botnarenco Veronica 4
Datele iniţiale în metoda reluării
Mulţimile:
};,,{ 11,12111 maaaA =
};,,{ 22,22212 maaaA =
...
}.,,{ ,21 nnmnnn aaaA =
Botnarenco Veronica 5
Soluţia în metoda reluării
Spaţiul soluţiilor:
nAAAS ×××= 21
Soluţia: ),,,,( 21 nxxxX =
unde ;11 Ax ∈ ;22 Ax ∈ ..., .nn Ax ∈
Botnarenco Veronica 6
Ideea metodei reluării
1. Presupunem că la pasul k am calculat deja valorile:
),,,( 21 kxxx 
2. Selectăm din mulţimea Ak+1 valoarea xk+1:
),,,,( 121 +kk xxxx 
3. Dacă ),,,,( 121 +kk xxxx  satisface condiţiile
problemei, trecem la pasul k+2.
În caz contrar revenim la pasul k şi alegem alt xk.
Botnarenco Veronica 7
Căutarea soluţiei prin metoda reluării
0
1
1
1
0
k : = 1
k k: = + 1
a 1 ,1
a 2 ,1
a 1 2,
a 2 ,2
a 3 , 1
a 3 , 2 a 3 ,30
k k: = + 1 k k -: = 1k k: = + 1
1
A 1
A 2
A 3
0 0
Botnarenco Veronica 8
Schema generală a algoritmului recursiv
bazat pe metoda reluării
procedure Reluare(k:integer);
begin
if k<=n then
begin
X[k]:=PrimulElement(k);
if Continuare(k) then Reluare(k+1);
while ExistaSuccesor(k) do
begin
X[k]:=Succesor(k);
if Continuare(k) then Reluare(k+1)
end; { while }
end { then }
else PrelucrareaSolutiei;
end; {Reluare}
Botnarenco Veronica 9
Clasificarea problemelor
1. Mulţimile A1, A2, ..., An sînt cunoscute.
3. Elementele din care sînt formate mulţimile A1,
A2, ..., An şi numărul n sînt necunoscute.
2. Sînt cunoscute elementele din care sînt formate
mulţimile A1, A2, ..., An, numărul n fiind
necunoscut.
Botnarenco Veronica 10
Exemplul 1
Se consideră mulţimile A1, A2, ..., An, fiecare mulţime
fiind formată din mk numere naturale. Selectaţi din
fiecare mulţime cîte un număr în aşa mod încît suma lor
să fie egală cu q.
Botnarenco Veronica 11
Exemplul 1. Reprezentarea datelor
const mmax=50; { numărul maximal de mulţimi }
nmax=50; { numărul maximal de elemente }
type Natural = 0..MaxInt;
Multime = array[1..nmax] of Natural;
var A : array[1..nmax] of Multime;
n : 1..nmax; { numărul de mulţimi }
M : array[1..nmax] of 1..mmax; { cardinalul mulţimii S[k] }
X : array[1..nmax] of 1..mmax; { indicii elementelor selectate }
q : Natural;
k, j : integer;
Indicator : boolean;
Botnarenco Veronica 12
Function PrimulElement
function PrimulElement(k : integer) : Natural;
begin
PrimulElement:=1;
end; {PrimulElement }
Botnarenco Veronica 13
function Continuare(k : integer) : boolean;
var j : integer;
suma : Natural;
begin
suma:=0;
for j:=1 to k do suma:=suma+A[j, X[j]];
if ((k<n) and (suma<q)) or ((k=n) and (suma=q))
then Continuare:=true
else Continuare:=false;
end; { Continuare }
Function Continuare
Botnarenco Veronica 14
function ExistaSuccesor(k : integer) : boolean;
begin
ExistaSuccesor:=(X[k]<M[k]);
end; { ExistaSuccesor }
Function ExistaSuccesor
Botnarenco Veronica 15
procedure Reluare(k : integer);
{ Metoda reluarii - varianta recursiva }
begin
if k<=n then
begin
X[k]:=PrimulElement(k);
if Continuare(k) then Reluare(k+1);
while ExistaSuccesor(k) do
begin
X[k]:=Succesor(k);
if Continuare(k) then Reluare(k+1);
end { while }
end { then }
else PrelucrareaSolutiei;
end; { Reluare }
Procedure Reluare
Botnarenco Veronica 16
1
2
3
j
i
C
1
2
......
3
B
n
1 2 31 2 .. . m. ..
Exemplul 2. Labirintul
Botnarenco Veronica 17
Labirintul. Formularea matematică
Mulţimile:
},,,{1 StîngaJosDreaptaSusA =
},,,{2 StîngaJosDreaptaSusA =
...
Soluţia:
},,,,,
,,,,,{
JosJosJosJosDreaptaDreapta
DreaptaJosDreaptaDreaptaDreaptaX =
},,,{3 StîngaJosDreaptaSusA =
Botnarenco Veronica 18
Exemplul 3. Domino
Piesele iniţiale “Tren” format din 3 piese
Botnarenco Veronica 19
Calculul mulţimilor A1, A2, ..., An
)}6,6(),0,3(),5,3(),6,3{(1 =A
)}6,6(),0,3(),5,3{(2 =A
Includem (3, 6) în tren.
Includem (6, 6) în tren.
)}0,3(),5,3{(3 =A
Botnarenco Veronica 20
Exemplul 4. Speologie
I Z V O A R E
S T A L A C T I T E
L I L I E C I
I E S I R E
S T A L A G M I T E
I N T R A R E
Botnarenco Veronica 21
Exemplul 4. Speologie
(planul labirintului este necunoscut)
function UndeMaAflu : string –
returnează un şir de caractere ce conţine
denumirea peşterii în care în prezent se află
speologul, două puncte şi denumirile de intrări de
galerii, separate prin spaţiu.
LILIECI: STALAGMITE IZVOARE LILIECI LILIECI
Exemplu:
Botnarenco Veronica 22
Calculul mulţimilor A1, A2, ..., An
A1 – peştera INTRARE:
A1 = {STALACTITE, STALAGMITE}
A3 – peştera IZVOARE:
A2 = {STALACTITE, IESIRE, LILIECI}
A2 – peştera STALACTITE:
A2 = {INTRARE, IZVOARE}
Botnarenco Veronica 23
Vă mulţumesc pentru atenţie !

More Related Content

What's hot (20)

Plasmidele
PlasmidelePlasmidele
Plasmidele
 
Stop violentei
Stop violenteiStop violentei
Stop violentei
 
Siguranta copilului pe internet
Siguranta copilului pe internetSiguranta copilului pe internet
Siguranta copilului pe internet
 
Curiozitati din lumea vie
Curiozitati din lumea vieCuriozitati din lumea vie
Curiozitati din lumea vie
 
Alimentatia Sanatoasa a Copilului
Alimentatia Sanatoasa a CopiluluiAlimentatia Sanatoasa a Copilului
Alimentatia Sanatoasa a Copilului
 
Alcatuirea unei plante
Alcatuirea unei planteAlcatuirea unei plante
Alcatuirea unei plante
 
Stresul inainte de bac
Stresul inainte de bacStresul inainte de bac
Stresul inainte de bac
 
Oxidul de calciu
Oxidul de calciu Oxidul de calciu
Oxidul de calciu
 
Rolul plantelor in natura
Rolul plantelor in naturaRolul plantelor in natura
Rolul plantelor in natura
 
Functii aplicatii practice
Functii aplicatii practiceFunctii aplicatii practice
Functii aplicatii practice
 
Pogradeci
PogradeciPogradeci
Pogradeci
 
3 13 Drept Informatic
3 13 Drept Informatic3 13 Drept Informatic
3 13 Drept Informatic
 
Sarbatorile primaverii
Sarbatorile primaveriiSarbatorile primaverii
Sarbatorile primaverii
 
Tipuri de date simple
Tipuri de date simpleTipuri de date simple
Tipuri de date simple
 
Alimentatie sanatoasa
Alimentatie sanatoasaAlimentatie sanatoasa
Alimentatie sanatoasa
 
Igiena
IgienaIgiena
Igiena
 
inform pt gimnaziu
inform pt gimnaziuinform pt gimnaziu
inform pt gimnaziu
 
Prezentare emotii
Prezentare emotiiPrezentare emotii
Prezentare emotii
 
133278699-Proiect-de-Lectie-HOLOCAUST.doc
133278699-Proiect-de-Lectie-HOLOCAUST.doc133278699-Proiect-de-Lectie-HOLOCAUST.doc
133278699-Proiect-de-Lectie-HOLOCAUST.doc
 
Traieste sanatos, mananca inteligent!
Traieste sanatos, mananca inteligent!Traieste sanatos, mananca inteligent!
Traieste sanatos, mananca inteligent!
 

Viewers also liked

Viewers also liked (20)

Metoda backtracking
Metoda backtrackingMetoda backtracking
Metoda backtracking
 
Catalina.metoda reluării
Catalina.metoda reluăriiCatalina.metoda reluării
Catalina.metoda reluării
 
Metoda reluării
Metoda reluăriiMetoda reluării
Metoda reluării
 
Madaç
MadaçMadaç
Madaç
 
Metoda reluarii
Metoda reluariiMetoda reluarii
Metoda reluarii
 
Metoda reluarii..
Metoda reluarii..Metoda reluarii..
Metoda reluarii..
 
Metoda reluării(2)
Metoda reluării(2)Metoda reluării(2)
Metoda reluării(2)
 
Metoda reluării
Metoda reluăriiMetoda reluării
Metoda reluării
 
MetodaRMC
MetodaRMCMetodaRMC
MetodaRMC
 
Metoda reluării(1)
Metoda reluării(1)Metoda reluării(1)
Metoda reluării(1)
 
Metoda reluării(3)
Metoda reluării(3)Metoda reluării(3)
Metoda reluării(3)
 
Metoda backtracking(1)
Metoda backtracking(1)Metoda backtracking(1)
Metoda backtracking(1)
 
0metoda reluarii
0metoda reluarii0metoda reluarii
0metoda reluarii
 
RH
RHRH
RH
 
Metoda reluarii
Metoda reluariiMetoda reluarii
Metoda reluarii
 
презентация Microsoft office power point
презентация Microsoft office power pointпрезентация Microsoft office power point
презентация Microsoft office power point
 
Curriculum la disciplina informatica clasele X – XII (varianta în limba română)
Curriculum la disciplina informatica clasele X – XII (varianta în limba română)Curriculum la disciplina informatica clasele X – XII (varianta în limba română)
Curriculum la disciplina informatica clasele X – XII (varianta în limba română)
 
Metoda reluării
Metoda reluăriiMetoda reluării
Metoda reluării
 
Catalina
CatalinaCatalina
Catalina
 
Dinu(2)
Dinu(2)Dinu(2)
Dinu(2)
 

Similar to Informatica(1)

metoda_backtracking22.ppt
metoda_backtracking22.pptmetoda_backtracking22.ppt
metoda_backtracking22.pptOKMAN9
 
00007 backtracking
00007 backtracking00007 backtracking
00007 backtrackingAlly Le
 
125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometrice125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometriceClaudia Morosanu
 
Tehnici de programare_triere_1522
Tehnici de programare_triere_1522Tehnici de programare_triere_1522
Tehnici de programare_triere_1522miklleee
 
Binom Newton
Binom NewtonBinom Newton
Binom Newtonoles vol
 
Inductia matematica
Inductia matematicaInductia matematica
Inductia matematicaDia_Cla
 
Analiza matematica
Analiza matematicaAnaliza matematica
Analiza matematicasorinsiacob
 
matematica-pentru-examenul-de-bacalaureat-m1.pdf
matematica-pentru-examenul-de-bacalaureat-m1.pdfmatematica-pentru-examenul-de-bacalaureat-m1.pdf
matematica-pentru-examenul-de-bacalaureat-m1.pdfGeorgianaPlea
 
Lectie relatiile lui viet ec gr ii
Lectie relatiile lui viet ec gr iiLectie relatiile lui viet ec gr ii
Lectie relatiile lui viet ec gr iiRebenciuc
 
Inductia matematica
Inductia matematicaInductia matematica
Inductia matematicaCurt Marius
 
Tehnici de programare triere
Tehnici de programare triereTehnici de programare triere
Tehnici de programare trierecboldisor
 

Similar to Informatica(1) (19)

metoda_backtracking22.ppt
metoda_backtracking22.pptmetoda_backtracking22.ppt
metoda_backtracking22.ppt
 
00007 backtracking
00007 backtracking00007 backtracking
00007 backtracking
 
divizori-descriere 2.doc
divizori-descriere 2.docdivizori-descriere 2.doc
divizori-descriere 2.doc
 
Metoda reluarii
Metoda reluariiMetoda reluarii
Metoda reluarii
 
125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometrice125907307 ecuatii-trigonometrice
125907307 ecuatii-trigonometrice
 
Metoda reluarii
Metoda reluarii Metoda reluarii
Metoda reluarii
 
Tehnici de programare_triere_1522
Tehnici de programare_triere_1522Tehnici de programare_triere_1522
Tehnici de programare_triere_1522
 
Binom Newton
Binom NewtonBinom Newton
Binom Newton
 
Opt
OptOpt
Opt
 
Inductia matematica
Inductia matematicaInductia matematica
Inductia matematica
 
Analiza matematica
Analiza matematicaAnaliza matematica
Analiza matematica
 
an num old
an num oldan num old
an num old
 
matematica-pentru-examenul-de-bacalaureat-m1.pdf
matematica-pentru-examenul-de-bacalaureat-m1.pdfmatematica-pentru-examenul-de-bacalaureat-m1.pdf
matematica-pentru-examenul-de-bacalaureat-m1.pdf
 
Calculul numeric teorie
Calculul numeric teorieCalculul numeric teorie
Calculul numeric teorie
 
D mt1 i_038
D mt1 i_038D mt1 i_038
D mt1 i_038
 
Lectie relatiile lui viet ec gr ii
Lectie relatiile lui viet ec gr iiLectie relatiile lui viet ec gr ii
Lectie relatiile lui viet ec gr ii
 
Inductia matematica
Inductia matematicaInductia matematica
Inductia matematica
 
Algebra si analiza de 11
Algebra si analiza de 11Algebra si analiza de 11
Algebra si analiza de 11
 
Tehnici de programare triere
Tehnici de programare triereTehnici de programare triere
Tehnici de programare triere
 

More from Balan Veronica (20)

10690908 737125719676587 190185588_n
10690908 737125719676587 190185588_n10690908 737125719676587 190185588_n
10690908 737125719676587 190185588_n
 
Integrarea numerica
Integrarea numericaIntegrarea numerica
Integrarea numerica
 
Veronica botnarenco
Veronica botnarencoVeronica botnarenco
Veronica botnarenco
 
Integrare numerică
Integrare numericăIntegrare numerică
Integrare numerică
 
Inform
InformInform
Inform
 
Metodele de integrare
Metodele de integrareMetodele de integrare
Metodele de integrare
 
Metode de calcul al integralei definite
Metode de calcul al integralei definiteMetode de calcul al integralei definite
Metode de calcul al integralei definite
 
Integrarea numerică
Integrarea numericăIntegrarea numerică
Integrarea numerică
 
Dreptunghiuri
DreptunghiuriDreptunghiuri
Dreptunghiuri
 
aana
aanaaana
aana
 
CatPadI
CatPadICatPadI
CatPadI
 
integrare
integrareintegrare
integrare
 
Metoda0newton
Metoda0newtonMetoda0newton
Metoda0newton
 
Metoda-bisecției
Metoda-bisecțieiMetoda-bisecției
Metoda-bisecției
 
Metoda-coardei
Metoda-coardeiMetoda-coardei
Metoda-coardei
 
Metoda-newton(1)
Metoda-newton(1)Metoda-newton(1)
Metoda-newton(1)
 
newton
newtonnewton
newton
 
BD
BDBD
BD
 
pr
prpr
pr
 
PD
PDPD
PD
 

Informatica(1)

  • 2. Botnarenco Veronica 2 Ne amintim mai întîi tehnica Greedy Datele iniţiale: },,,{ 21 naaaA = Soluţia problemei: AxxxxX k ∈= ),,,,( 21  Ideia tehnicii Greedy: alegem cîte un element din mulţimea A şi îl includem în vectorul X mulţimea vectorul
  • 3. Botnarenco Veronica 3 Schema generală a algoritmului Greedy while ExistaElemente do begin AlegeUnElement(x); IncludeElementul(x); end
  • 4. Botnarenco Veronica 4 Datele iniţiale în metoda reluării Mulţimile: };,,{ 11,12111 maaaA = };,,{ 22,22212 maaaA = ... }.,,{ ,21 nnmnnn aaaA =
  • 5. Botnarenco Veronica 5 Soluţia în metoda reluării Spaţiul soluţiilor: nAAAS ×××= 21 Soluţia: ),,,,( 21 nxxxX = unde ;11 Ax ∈ ;22 Ax ∈ ..., .nn Ax ∈
  • 6. Botnarenco Veronica 6 Ideea metodei reluării 1. Presupunem că la pasul k am calculat deja valorile: ),,,( 21 kxxx  2. Selectăm din mulţimea Ak+1 valoarea xk+1: ),,,,( 121 +kk xxxx  3. Dacă ),,,,( 121 +kk xxxx  satisface condiţiile problemei, trecem la pasul k+2. În caz contrar revenim la pasul k şi alegem alt xk.
  • 7. Botnarenco Veronica 7 Căutarea soluţiei prin metoda reluării 0 1 1 1 0 k : = 1 k k: = + 1 a 1 ,1 a 2 ,1 a 1 2, a 2 ,2 a 3 , 1 a 3 , 2 a 3 ,30 k k: = + 1 k k -: = 1k k: = + 1 1 A 1 A 2 A 3 0 0
  • 8. Botnarenco Veronica 8 Schema generală a algoritmului recursiv bazat pe metoda reluării procedure Reluare(k:integer); begin if k<=n then begin X[k]:=PrimulElement(k); if Continuare(k) then Reluare(k+1); while ExistaSuccesor(k) do begin X[k]:=Succesor(k); if Continuare(k) then Reluare(k+1) end; { while } end { then } else PrelucrareaSolutiei; end; {Reluare}
  • 9. Botnarenco Veronica 9 Clasificarea problemelor 1. Mulţimile A1, A2, ..., An sînt cunoscute. 3. Elementele din care sînt formate mulţimile A1, A2, ..., An şi numărul n sînt necunoscute. 2. Sînt cunoscute elementele din care sînt formate mulţimile A1, A2, ..., An, numărul n fiind necunoscut.
  • 10. Botnarenco Veronica 10 Exemplul 1 Se consideră mulţimile A1, A2, ..., An, fiecare mulţime fiind formată din mk numere naturale. Selectaţi din fiecare mulţime cîte un număr în aşa mod încît suma lor să fie egală cu q.
  • 11. Botnarenco Veronica 11 Exemplul 1. Reprezentarea datelor const mmax=50; { numărul maximal de mulţimi } nmax=50; { numărul maximal de elemente } type Natural = 0..MaxInt; Multime = array[1..nmax] of Natural; var A : array[1..nmax] of Multime; n : 1..nmax; { numărul de mulţimi } M : array[1..nmax] of 1..mmax; { cardinalul mulţimii S[k] } X : array[1..nmax] of 1..mmax; { indicii elementelor selectate } q : Natural; k, j : integer; Indicator : boolean;
  • 12. Botnarenco Veronica 12 Function PrimulElement function PrimulElement(k : integer) : Natural; begin PrimulElement:=1; end; {PrimulElement }
  • 13. Botnarenco Veronica 13 function Continuare(k : integer) : boolean; var j : integer; suma : Natural; begin suma:=0; for j:=1 to k do suma:=suma+A[j, X[j]]; if ((k<n) and (suma<q)) or ((k=n) and (suma=q)) then Continuare:=true else Continuare:=false; end; { Continuare } Function Continuare
  • 14. Botnarenco Veronica 14 function ExistaSuccesor(k : integer) : boolean; begin ExistaSuccesor:=(X[k]<M[k]); end; { ExistaSuccesor } Function ExistaSuccesor
  • 15. Botnarenco Veronica 15 procedure Reluare(k : integer); { Metoda reluarii - varianta recursiva } begin if k<=n then begin X[k]:=PrimulElement(k); if Continuare(k) then Reluare(k+1); while ExistaSuccesor(k) do begin X[k]:=Succesor(k); if Continuare(k) then Reluare(k+1); end { while } end { then } else PrelucrareaSolutiei; end; { Reluare } Procedure Reluare
  • 16. Botnarenco Veronica 16 1 2 3 j i C 1 2 ...... 3 B n 1 2 31 2 .. . m. .. Exemplul 2. Labirintul
  • 17. Botnarenco Veronica 17 Labirintul. Formularea matematică Mulţimile: },,,{1 StîngaJosDreaptaSusA = },,,{2 StîngaJosDreaptaSusA = ... Soluţia: },,,,, ,,,,,{ JosJosJosJosDreaptaDreapta DreaptaJosDreaptaDreaptaDreaptaX = },,,{3 StîngaJosDreaptaSusA =
  • 18. Botnarenco Veronica 18 Exemplul 3. Domino Piesele iniţiale “Tren” format din 3 piese
  • 19. Botnarenco Veronica 19 Calculul mulţimilor A1, A2, ..., An )}6,6(),0,3(),5,3(),6,3{(1 =A )}6,6(),0,3(),5,3{(2 =A Includem (3, 6) în tren. Includem (6, 6) în tren. )}0,3(),5,3{(3 =A
  • 20. Botnarenco Veronica 20 Exemplul 4. Speologie I Z V O A R E S T A L A C T I T E L I L I E C I I E S I R E S T A L A G M I T E I N T R A R E
  • 21. Botnarenco Veronica 21 Exemplul 4. Speologie (planul labirintului este necunoscut) function UndeMaAflu : string – returnează un şir de caractere ce conţine denumirea peşterii în care în prezent se află speologul, două puncte şi denumirile de intrări de galerii, separate prin spaţiu. LILIECI: STALAGMITE IZVOARE LILIECI LILIECI Exemplu:
  • 22. Botnarenco Veronica 22 Calculul mulţimilor A1, A2, ..., An A1 – peştera INTRARE: A1 = {STALACTITE, STALAGMITE} A3 – peştera IZVOARE: A2 = {STALACTITE, IESIRE, LILIECI} A2 – peştera STALACTITE: A2 = {INTRARE, IZVOARE}
  • 23. Botnarenco Veronica 23 Vă mulţumesc pentru atenţie !