rutiere. Putem afla astfel cel mai scurt drum pana intr-un anumit punct sau care puncte de pe harta sunt cel mai usor accesibil.Nodurile pot fi considerate orase, iar muchiile drumuri; grafurile orientate pot reprezente drumuri cu sens unic intre cladiri. De asemenea, ne putem reprezenta traiectoria unei calatorii cu ajutorul unui lant al unui graf neorientat. Grafurile mai pot arata legaturile dintre anuminte grupuri sau oameni; grafuri orientate pot arata transferul de informatii sau a unor bunuri.Un arbore genealogic este de asemena un graf neorientat. Cablurile de inalta tensiune care pornesc dintr-o centrala pot fi si ele reprezentate cu usurinta cu ajutorul unui graf orientat, indicand si directia de deplasare a curentului. In acest caz centrala este un nod sursa. La fel se poate reprezenta si un sistem de canalizare, de incalzire sau reteaua de apa curenta. Multitudinea cailor aeriene reprezinta grafuri. Nodurile sunt intersectiile (imaginare) si muchiile sunt rutele (imaginare). Noduri pot fi si aeroporturile. Teoria grafurilor are numeroase apeluri in chimie, contribuind in mare masura la rezolvarea problemelor de numarare a grafurilor apartinand unor clase speciale. Teoria grafurilor este folosita in domenii variate: de la chimie la economie, de la studiul retelelor electrice la critica textelor de politica, devenind o disciplina majora. Acum ca am aflat cat de folositoare sunt
grafurile, ne punem intrebarea:
Ce sunt GRAFURILE? Elemente teoretice-structura de tip GRAF Grafurile sunt structuri de date care se pot implemente atat ca structuri de date alocate static cât şi alocate dinamic. Grafurile sunt utilizate în modelarea problemelor legate de activitati întâlnite în realitatea de zi cu zi. Structura unui graf reflectă structură unei probleme reale. Grafurile sunt formate din puncte (numite noduri sau vârfuri - engleza = nodes / vertices) şi conexiuni între noduri (numite muchii – engleza edges). Nod=componenta a grafului,si extremitati a muchiilor
Muchie=”drumul” dintre 2 noduri
Lant=o succesiune de 2 noduri cu proprietatea ca
oricare 2 noduri consecutive din lant sunt adiacente. Definiţie Numim muchii adiacente două muchii cu o extremitate comună. Pentru exemplul de mai sus, muchiile [1,5] şi [5,4] sunt muchii adiacente pentru că au ca extremitate comună nodul 5. Parcurgerea pe latime se efectueaza prin utilizarea structurii numita coada,avand grija ca un nod sa fie vizitat o singura data. De exemplu, în figura de mai jos avem două grafuri A şi B, fiecare cu câte 5 noduri şi număr diferit de muchii. Se numeşte graf neorientat, o pereche ordonată
de multimi notată G = (V,E), unde V = {v1, v2, …,
vn} este o mulţime finită şi nevidă de elemente numite noduri sau vârfuri iar E = {e1,e2,…,en} este o mulţime de perechi neordonate de elemente din E numite muchii. Se numeşte graf orientat o pereche ordonată de mulţimi G=(V,E), unde unde V = {v1, v2, …, vn} este o multime finită şi nevidă, numită mulţimea nodurilor sau vârfuri, iar E = {e1,e2,…,en} este o mulţime formată din perechi ordonate de elemente ale lui E, numită mulţimea arcelor. Un exemplu de graf orientat este: reţeaua de străzi a unui oraş. Străzile sunt muchii în graf, iar intersecţiile reprezintă vârfurile grafului. Întrucât mergând pe jos ne putem deplasa pe orice stradă în ambele sensuri, vom spune că din punctul de vedere al pietonilor, „graful unui oraş” este neo- rientat. Cu totul altfel stau lucrurile în ceea ce priveşte conducătorii auto, pentru că în orice oraş există străzi cu sens unic. Pentru un şofer străzile trebuie să primească în graf o anumită orientare. Desigur că acele străzi pe care se poate circula în ambele sensuri vor primi orientare dublă. Am ajuns astfel la noţiunea de graf orientat. Problema
Un exemplu de graf din lumea reala
reprezinta drumurile dintre orase. De exemplu, doresc sa aflu daca intre doua orase exista drum care le leaga. Luand doua orase la intamplare,vrem sa stim daca exista drum intre ele. Despre problema Se da o tara in care se afla m noduri(orase). Muchiile reprezinta drumul dintre ele. Citind de la tastatura matricea de adiacenta a grafului si o insiruire de m noduri aflati daca exista drum de legatura intre ele. (exista un lant format din nodurile citite.) Sa se afiseze toate orasele folosind o metoda de parcurgere. Modul de rezolvare al problemei
citim matricea de adiacenta si cele m
noduri verificam daca exista un lant format din cele m noduri parcurgem graful folosind metoda pe latime afisam rezultatul Alte exemple de grafuri din viaţa reală
Intr-o fabrica sunt n muncitori .Intre
acesti muncitori exista relatia de colegialitate. a) Sa se reprezinte sub forma de graf muncitorii fabricii respective si relatiile dintre ei pentru n=6. b) Ce fel de graf ati obtinut ? Rezolvare a)Reprezentarea grafului.