Vrste grafova u strukturi podataka s primjerima
โก Pametni saลพetak
Grafovi u strukturi podataka su nelinearne kolekcije vrhova i bridova klasificiranih u porodice kao ลกto su usmjereni, neusmjereni, ponderirani, cikliฤki, acikliฤki, potpuni, povezani, bipartitni, Eulerovi i Hamiltonovi grafovi na temelju strukture.

Graf je nelinearna struktura podataka koja se sastoji od vrhova i bridova. Vrhovi sadrลพe informacije ili podatke, a bridovi djeluju kao veza izmeฤu para vrhova.
Grafovi mogu biti viลกe vrsta, ovisno o poloลพaju ฤvorova i rubova. Evo nekih vaลพnih vrsta grafova:
Usmjereni graf
Rubovi usmjerenog grafa sadrลพe strelice koje oznaฤavaju smjer. Strelica odreฤuje kamo je rub usmjeren ili gdje zavrลกava. Evo primjera usmjerenog grafa.
Usmjereni graf
- 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 bridove bez pokazivaฤa. To znaฤi da se moลพemo kretati obrnuto izmeฤu dva vrha. Evo jednostavnog primjera neusmjerenog grafa.
Neusmjereni graf
U gornjem grafikonu,
- Moลพemo se kretati od toฤke A do toฤke B.
- Takoฤer se moลพemo pomaknuti iz B u A.
- Rubovi ne sadrลพe smjerove.
To je primjer neusmjerenog grafa koji ima konaฤan broj vrhova i bridova bez teลพina.
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 iz jednog vrha u drugi. I usmjereni i neusmjereni grafovi mogu imati teลพine na svojim rubovima. Evo primjera ponderiranog grafa (usmjerenog).
Usmjereni graf s teลพinom
- Od A do B, postoji rub, a teลพina je 5, ลกto znaฤi da ฤe nas premjeลกtanje od A do B koลกtati 5.
- A pokazuje na B, ali u ovom grafu, B nema izravnu prednost nad A. Dakle, ne moลพemo putovati od B do A.
- Meฤutim, ako se ลพelimo pomaknuti od A do F, postoji viลกe puteva. Putevi su ADF i ABF. ADF ฤe koลกtati (10+11) ili 21.
- Ovdje ฤe put ABF koลกtati (5+15) ili 20. Ovdje zbrajamo teลพinu svakog brida u putu.
Evo primjera neusmjerenog grafa s teลพinama:
Neusmjereni graf s teลพinom
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:
Dvosmjerni graf
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 bridova i ฤvorova. Ako je graf beskonaฤan i ujedno povezan graf, tada ฤe sadrลพavati i beskonaฤan broj bridova. Ovdje proลกireni bridovi znaฤe da se viลกe bridova moลพe spojiti na te ฤvorove putem bridova. Evo primjera beskonaฤnog grafa:
Beskonaฤni graf
Null Graph
Null graf sadrลพi samo ฤvorove ili vrhove, ali bez bridova. Ako je zadan graf G = (V, E), gdje su V vrhovi, a E bridovi, bit ฤe null ako je broj bridova E nula. Evo primjera Null grafa:
Null Graph
Trivijalni graf
Struktura podataka grafa smatra se trivijalnom ako je prisutan samo jedan vrh ili ฤvor bez bridova. Evo primjera trivijalnog grafa:
Viลกestruki grafikon
Graf se naziva multigraf kada postoji viลกe bridova izmeฤu dva vrha ili vrh ima petlju. Izraz "petlja" u strukturi podataka grafa oznaฤava brid koji pokazuje na isti ฤvor ili vrh. Multigraf moลพe biti usmjeren ili neusmjeren. Evo primjera multigrafa:
Postoje dva brida od B do A. ล toviลกe, vrh E ima vlastitu petlju. Gornji graf je usmjereni graf bez teลพina na bridovima.
Kompletan grafikon
Graf je potpun ako svaki vrh ima usmjerene ili neusmjerene bridove sa svim ostalim vrhovima. Pretpostavimo da postoji ukupno V vrhova i da svaki vrh ima toฤno V-1 bridova. Tada ฤe se ovaj graf nazivati โโpotpunim grafom. U ovoj vrsti grafa, svaki vrh je povezan sa svim ostalim vrhovima putem 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 brida.
Povezani graf
Graf se naziva povezani graf ako poฤinjemo od ฤvora ili vrha i moลพemo putovati do svih ฤvorova iz poฤetnog ฤvora. Za to mora postojati barem jedan brid izmeฤu svakog para ฤvorova ili vrhova. Evo primjera povezanog grafa:
Evo objaลกnjenja gore navedenog povezanog grafa:
- Pod pretpostavkom da nema brida izmeฤu C i F, ne moลพemo putovati od A do G. Meฤutim, brid C do F omoguฤuje nam putovanje do bilo kojeg ฤvora iz zadanog ฤvora.
- Potpuni graf je povezani graf jer se moลพemo kretati s ฤvora na bilo koji drugi ฤvor u danom grafu.
Cikliฤki graf
Graf se naziva cikliฤkim ako u grafu postoji jedan ili viลกe ciklusa. Evo primjera cikliฤkog grafa:
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 pri izvoฤenju Topoloลกko sortiranje ili pronalaลพenje redoslijeda izvrลกenja. DAG je takoฤer vaลพan za stvaranje sustava rasporeฤivanja ili skeniranje ovisnosti resursa itd. Meฤutim, gornji graf ne sadrลพi nikakav ciklus unutra. Evo jednostavnog primjera usmjerenog acikliฤkog grafa (DAG):
Grafikon ciklusa
Cikliฤni graf nije isto ลกto i cikliฤki graf. U cikliฤkom grafu, svaki ฤvor ฤe imati toฤno dva povezana brida, ลกto znaฤi da ฤe svaki ฤvor imati toฤno dva stupnja. Evo primjera cikliฤkog grafa:
Bipartitni graf
Takve vrste Grafovi su posebne vrste grafova gdje su vrhovi dodijeljeni dvama skupovima. Dvodijelni graf mora slijediti pravilo:
- Dva skupa vrhova trebaju biti razliฤita, ลกto znaฤi da svi vrhovi moraju biti podijeljeni u dvije skupine ili skupa.
- Vrhovi istog skupa ne smiju formirati nikakve bridove.
Eulerov graf
Struktura podataka Graf smatra se Eulerovim grafom ako svi vrhovi imaju paran stupanj. Pojam stupanj vrhova oznaฤava broj bridova koji pokazuju na ili iz odreฤenog vrha. Evo primjera Eulerovog grafa:
Svi vrhovi imaju parne stupnjeve. Vrhovi A, D, E i H imaju dva stupnja. Ovdje ฤvor C ima ฤetiri stupnja, ลกto je paran broj.
Hamiltonov graf
Hamiltonov graf je povezani graf u kojem moลพete posjetiti sve vrhove iz zadanog vrha bez ponovnog posjeฤivanja istog ฤvora ili koriลกtenja istog brida. Ova vrsta povezanog grafa poznata je kao "Hamiltonov graf". Put koji posjeฤujete kako biste provjerili je li zadani graf Hamiltonov graf ili ne poznat je kao Hamiltonov put. Evo jednostavnog primjera Hamiltonovog grafa:
Na ovoj slici moลพemo posjetiti sve vrhove iz bilo kojeg ฤvora u gornjem grafikonu. Jedan od putova moลพe biti ADCHBETakoฤer je moguฤe pronaฤi Hamiltonov ciklus. Hamiltonov ciklus poฤinje i zavrลกava u istom vrhu. Dakle, Hamiltonov ciklus ฤe biti ADCHBEA.


















