Vrste grafova u strukturi podataka s primjerima
Graf je nelinearna podatkovna struktura koja se sastoji od vrhova i bridova. Vrhovi sadrลพe informacije ili podatke, a rubovi djeluju kao poveznica izmeฤu para vrhova.
Grafovi mogu biti viลกe vrsta, ovisno o poloลพaju ฤvorova i rubova. Evo nekoliko vaลพnih vrsta grafikona:
Usmjereni graf
Rubovi usmjerenog grafa sadrลพe strelice koje oznaฤavaju smjer. Strelica odreฤuje gdje je rub usmjeren ili zavrลกava.
Evo primjera usmjerenog grafa.

- Moลพemo iฤi od ฤvora A do D.
- Meฤutim, ne moลพemo iฤi od ฤvora D do ฤvora A jer rub pokazuje od A do D.
- Kako Graf nema teลพine, putovanje od vrha A do D ฤe koลกtati isto kao i putovanje od D do F.
Neusmjereni graf
Neusmjereni graf sadrลพi rubove bez pokazivaฤa. To znaฤi da moลพemo putovati obrnuto izmeฤu dva vrha.
Evo jednostavnog primjera neusmjerenog grafa.

U gornjem grafikonu,
- Moลพemo prijeฤi od A do B
- Takoฤer moลพemo prijeฤi iz B u A
- Rubovi ne sadrลพe smjerove.
To je primjer neusmjerenog grafa koji ima konaฤan broj vrhova i bridova bez teลพine.
Ponderirani grafikon
Graf koji sadrลพi teลพine ili troลกkove na rubovima naziva se ponderirani graf. Numeriฤka vrijednost opฤenito predstavlja troลกak premjeลกtanja s jednog vrha na drugi vrh. I usmjereni i neusmjereni graf mogu imati teลพine na svojim rubovima.
Evo primjera ponderiranog grafa (usmjerenog).

- A do B, postoji prednost, a teลพina je 5, ลกto znaฤi da ฤe nas prelazak iz A u B koลกtati 5.
- A pokazuje na B, ali u ovom grafikonu, B nema izravni brid iznad A. Dakle, ne moลพemo putovati od B do A.
- Meฤutim, ako se ลพelimo pomaknuti od A do F, postoji viลกe puteva. Staze su ADF, ABF. ADF ฤe koลกtati (10+11) ili 21.
- Ovdje ฤe staza ABF koลกtati (5+15) ili 20. Ovdje dodajemo teลพinu svakog ruba na stazi.
Evo primjera neusmjerenog grafa s teลพinama:

Ovdje rub ima teลพinu, ali nema smjer. Dakle, to znaฤi da ฤe putovanje od vrha A do D koลกtati 10 i obrnuto.
Dvosmjerni graf
Dvosmjerni i neusmjereni grafovi imaju zajedniฤko svojstvo. To je
- Opฤenito, neusmjereni graf moลพe imati jedan brid izmeฤu dva vrha.
Na primjer:
- Ovdje ฤe prelazak s A na D ili D na A koลกtati 10.
- U dvosmjernom grafu moลพemo imati dva ruba izmeฤu dva vrha.
Evo primjera:

Putovanje od A do D koลกtat ฤe nas 17, ali putovanje od D do A koลกtat ฤe nas 12. Dakle, ne moลพemo dodijeliti dvije razliฤite teลพine ako se radi o neusmjerenom grafu.
Beskonaฤni graf
Graf ฤe sadrลพavati beskonaฤan broj rubova i ฤvorova. Ako je graf Beskonaฤan i takoฤer je povezan graf, tada ฤe takoฤer sadrลพavati beskonaฤan broj bridova. Ovdje proลกireni rubovi znaฤe da viลกe rubova moลพe biti povezano s tim ฤvorovima preko rubova.
Evo primjera beskonaฤnog grafa:

Null Graph
Null Graph sadrลพi samo ฤvorove ili vrhove, ali bez rubova. Ako je dan graf G = (V, E), gdje su V vrhovi, a E bridovi, on ฤe biti nula ako je broj bridova E nula.
Evo primjera nultog grafa:

Trivijalni graf
Struktura podataka grafa smatra se trivijalnom ako je prisutan samo jedan vrh ili ฤvor bez rubova.
Evo primjera trivijalnog grafa:
Viลกestruki grafikon
Graf se naziva multigraf kada je izmeฤu dva vrha prisutno viลกe bridova ili vrh ima petlju. Izraz "petlja" u strukturi podataka grafa znaฤi rub koji pokazuje na isti ฤvor ili vrh. Multigraf moลพe biti usmjeren i neusmjeren.
Evo primjera multigrafa:
Postoje dva brida od B do A. ล toviลกe, vrh E ima samopetlju. Gornji graf je usmjereni graf bez utega na rubovima.
Kompletan grafikon
Graf je potpun ako svaki vrh ima usmjerene ili neusmjerene bridove sa svim ostalim vrhovima.
Pretpostavimo da postoji ukupan broj vrhova V i da svaki vrh ima toฤno V-1 bridova. Tada ฤe se ovaj graf zvati Potpuni graf. U ovoj vrsti grafa, svaki vrh je povezan sa svim ostalim vrhovima preko bridova.
Evo primjera potpunog grafa s pet vrhova:
Na slici moลพete vidjeti da je ukupan broj ฤvorova pet, a svi ฤvorovi imaju toฤno ฤetiri ruba.
Povezani graf
Graf se naziva povezanim grafom ako krenemo od ฤvora ili vrha i obiฤemo sve ฤvorove od poฤetnog ฤvora. Za to bi trebao postojati barem jedan brid izmeฤu svakog para ฤvorova ili vrhova.
Evo primjera povezanog grafikona:
Evo nekoliko objaลกnjenja gornjeg "cjelovitog primjera grafikona" Graf:
- Pod pretpostavkom da nema ruba izmeฤu C i F, ne moลพemo putovati od A do G. Meฤutim, rub C do F omoguฤuje nam putovanje do bilo kojeg ฤvora iz danog ฤvora.
- Potpuni graf je povezani graf jer se moลพemo kretati s ฤvora na bilo koji drugi ฤvor u danom grafu.
Cikliฤki graf
Za graf se kaลพe da je cikliฤki ako postoji jedan ili viลกe ciklusa prisutnih u grafu.
Evo primjera cikliฤkog grafikona:
Ovdje vrhovi A, B i C tvore ciklus.
Graf moลพe imati viลกe ciklusa unutar sebe.
Usmjereni acikliฤki graf (DAG)
Graf se naziva usmjereni acikliฤki graf ili DAG ako unutar grafa nema ciklusa. DAG je vaลพan dok radite Topoloลกko sortiranje ili pronalazak naloga za izvrลกenje. DAG je takoฤer vaลพan za stvaranje sustava za planiranje ili skeniranje ovisnosti o resursima itd. Meฤutim, gornji grafikon ne sadrลพi nikakav ciklus unutra.
Evo jednostavnog primjera usmjerenog acikliฤkog grafa (DAG):
Grafikon ciklusa
Ciklusni graf nije isto ลกto i cikliฤki graf. U Cycle Graphu svaki ฤe ฤvor imati toฤno dva spojena ruba, ลกto znaฤi da ฤe svaki ฤvor imati toฤno dva stupnja.
Evo primjera ciklusnog grafikona:
Bipartitni graf
Takve vrste Grafovi su posebne vrste grafova gdje su vrhovi dodijeljeni dvama skupovima.
Bipartitni graf mora slijediti pravilo:
- Dva skupa vrhova trebaju biti razliฤita, ลกto znaฤi da svi vrhovi moraju biti podijeljeni u dvije grupe ili skupa.
- Vrhovi istog skupa ne bi trebali tvoriti rubove.
Eulerov graf
Strukture podataka grafa smatraju se Eulerovim grafom ako svi vrhovi imaju parni stupanj. Pojam stupnja vrhova oznaฤava broj bridova koji pokazuju ili izlaze iz odreฤenog vrha.
Evo primjera Eulerovog grafa:
Svi vrhovi imaju parne stupnjeve. Vrh A, D, E i H imaju dva stupnja. Ovdje ฤvor C ima ฤetiri stupnja, ลกto je ฤak.
Hamiltonov graf
Hamilton Graph je Connect Graph, gdje moลพete posjetiti sve vrhove iz danog vrha bez ponovnog posjeฤivanja istog ฤvora ili koriลกtenja istog ruba. Ova vrsta povezanog grafa poznata je kao "Hamiltonov graf". Put koji posjeฤujete kako biste provjerili je li dani graf Hamiltonov graf ili nije poznat je kao Hamiltonov put.
Evo jednostavnog primjera grafikona Hamiltona:
Na ovoj slici moลพemo posjetiti sve vrhove iz bilo kojeg ฤvora u gornjem grafikonu. Jedan od putova moลพe biti ADCHBE. Takoฤer je moguฤe pronaฤi Hamiltonov ciklus. Hamiltonov ciklus poฤinje i zavrลกava na istom vrhu. Dakle, Hamiltonov ciklus ฤe biti ADCHBEA.












