15
Bugs Bunny si Duffy Duc Operatiunea: MORCOVI

Bugs Bunny si Duffy Duck

  • Upload
    agnes

  • View
    71

  • Download
    5

Embed Size (px)

DESCRIPTION

Bugs Bunny si Duffy Duck. Operatiunea : MORCOVI. Toata lumea a auzit de Bugs Bunny. Iepurele care intră î n tot felul de probleme și le rezolvă in moduri deosebite. . - PowerPoint PPT Presentation

Citation preview

Page 1: Bugs Bunny si Duffy Duck

Bugs Bunny si Duffy Duck

Operatiunea: MORCOVI

Page 2: Bugs Bunny si Duffy Duck

Toata lumea a auzit de Bugs Bunny. Iepurele care intră în tot felul de probleme și le rezolvă in moduri deosebite.

Însa problema de astazi e destul de dificilă, chiar și pentru nonconformistul nostru iepuraș. Va reuși el s-o rezolve?!

Page 3: Bugs Bunny si Duffy Duck

Pentru că lenevise toata vara Bugs neglijase recolta de morcovii. Iar acum trebuiau stranşi toţi morcovii din toate gradinile până la venirea toamnei. Atât de multă muncă într-un timp atât de scurt…

Dar se pare că eroul nostru va avea un ajutor, la orizont se vede neînfricatul Duffy Duck.

-Bugs prietene, ce ai? De ce eşti suparat?-Of.. Duffy.. Am o mare problemă. Am atât de multa muncă şi un timp atât de scurt..-Eh.. Sunt sigur că o să o rezolvăm prietene.

Spune-mi ce problemă ai. Ascult.

Page 4: Bugs Bunny si Duffy Duck

-Trebuie să parcurg un drum astfel încat să trec pe la toate graădinile mele si să culeg totii morcovii cât mai repede până la venirea toamnei. Dar e atât de puţin timp.

-Amice, cred că te pot ajuta. Am putea folosi un graf orientat. Şi problema ta ar suna astfel:

Grădinile lui Bugs Bunny sunt nodurile unui graf orientat . Să se calculeze drumurile minime de la un nod al grafului la toate celelalte noduri.

Page 5: Bugs Bunny si Duffy Duck
Page 6: Bugs Bunny si Duffy Duck

-Duffy, dar eu nu ştiu ce sunt acelea grafuri. Nu am auzit de aşa ceva…-Nu-i nimic, Bugs. Am să-ţi explic. E atât de uşor.. După cum ai observat desenul meu e un fel de harta, ne va ajuta să parcurgem toate grădinile în timpul cel mai scurt.

-Spune-mi câte ceva despre grafuri, Duffy.

Page 7: Bugs Bunny si Duffy Duck

-Bugs, un graf este o pereche ordonatã de mulþimi G = (X, U), unde :•X = mulţimea nodurilor - mulţime finitã, nevidã•U = mulţimea arcelor - mulţime finitã de perechi ordonate de elemente distincte din X.Elementele muţimii U se numesc arce,iar mulţimea U se mai numeşte şi mulţimea arcelor.Vârfurile adiacente sunt orice pereche de vârfuri care formează un arc.Pentru arcul (x,y) spunem că x este extremitate iniţiala iar y este extremitate finala.Se numesc arce incidente doua arce care au o extremitate comună.Se numeşte succesor al vârfului X orice vârf în care ajunge un arc care pleacă din vârful X.Se numeşte predecesor al vârfului X orice vârf în care intra un arc care pleacă din vârful X.

Page 8: Bugs Bunny si Duffy Duck

Nod sursă al grafului este nodul care are mulţimea succesorilor formată din toate celelalte noduri mai puţin el iar mulţimea predecesorilor săi este vidă. Nod destinaţie al grafului este nodul care are mulţimea predecesorilor formată  din toate celelalte noduri mai puţin el iar mulţimea succesorilor săi este vidă.Se numeşte nod terminal un nod care are suma gradelor egală cu 1.Se numeşte nod izolat un nod care are suma gradelor egală cu 0.

Page 9: Bugs Bunny si Duffy Duck

-Nu pare aşa greu. Şi cum o să facem să găsim drumul folosind grafuri?-Vezi tu.. Numim drum o succesiune de noduri care au proprietatea că oricare ar fi două noduri succesive ele sunt legate printr-un arc. Şi ca să găsim cel mai bun drum o să folosim un algoritm.

Algoritmul porneşte de la un graf orientat si ponderat cu N noduriDe asemenea, e nevoie de un nod de start aparţinând grafului – acesta este nodul de la care se doreşte aflarea drumurilor minime până la celelalte noduri din graf.

-Să-i dăm drumul atunci!Mă asteaptă morcovii…

Page 10: Bugs Bunny si Duffy Duck

Fie X nodul de start – acesta se marchează ca vizitat.

Ideea găsirii drumului minim de la X la un un alt nod este căutarea treptată: se presupune că drumul minim este alcătuit dintr-un singur arc (arcul direct între X şi nodul ţintă, care poate să nu existe, costul sau fiind infinit în acest caz), apoi se caută drumuri mai scurte alcătuite din 2 arce, apoi din 3, etc. – un drum minim nu poate avea mai mult de N-1 arce, deci algoritmul are N-1 paşi (al N-lea este banal).

După pasul k (1 ≤ k ≤ N-1), tabloul D va conţine lungimile drumurilor minime de la nodul X la celelalte noduri, toate aceste drumuri fiind alcătuite din maxim k arce.

Astfel, D[Y] = L după pasul k înseamnă că de la X la Y există un drum minim de lungime L alcătuit din maxim k arce.

Deci, după pasul k, au fost gasite numai drumurile minime alcătuite din maxim k arce – abia la finalul algoritmului (după pasul N-1) drumurile minime obţinute sunt definitive, ele fiind drumuri minime alcătuite din maxim N-1 arce

Page 11: Bugs Bunny si Duffy Duck

Logica este următoarea:D[Y] conţine lungimea drumului minim de la nodul de

start la nodul Y care trece numai prin noduri marcate (Y fiind, la începutul pasului k, nodul nemarcat care avea D[Y] minim) – acest drum este alcătuit din maxim k-1 arce – D[Y] fiind minim, îl marcăm pe Y deoarece nu poate exista un drum mai scurt de la X la Y.

D[Z] conţine lungimea celui mai scurt drum de la nodul de start la nodul Z alcătuit din maxim k-1 arce – acest drum trece doar prin noduri marcate, fără să ţina cont că, între timp, şi Y a fost marcat.

S-ar putea să existe un drum mai scurt decât D[Z] de la nodul de start la Z alcătuit din maxim k arce care trece numai prin noduri marcate, inclusiv nodul Y – unicul drum cu această proprietate care poate fi mai scurt decât D[Z] este cel care include drumul minim până la Y şi arcul direct între Y şi Z, deci lungimea sa este D[Y] + Arc(Y , Z)

Page 12: Bugs Bunny si Duffy Duck

Rezultatul algoritmului se prezintă sub forma unui tablou D cu N intrari, conţinand distanţele minime de la nodul de start la toate celelalte noduri din graf.

De asemenea, tot ca rezultat se poate obţine şi arborele drumurilor minime (în cazul în care ne interesează nu numai lungimile minime ale drumurilor, ci şi drumurile propriu-zise) – acesta este un arbore generalizat care se va obţine sub forma unui tablou T cu N intrari (implementarea cu indicatori spre parinte).

Page 13: Bugs Bunny si Duffy Duck
Page 14: Bugs Bunny si Duffy Duck

-Gata Bugs. Acum putem porni la drum. -Ce uşurare.. Informatica chiar e folositoare. Abia aştept să învaţ si alte lucruri pe care le-aş putea aplica. SÃ PORNIM !

Page 15: Bugs Bunny si Duffy Duck

SFÂRȘIT