Vjezbe 4: Queue Fileovi: ------------------------------------- dostupni.c - program koji u usmjerenom grafu za zadani vrh "start" vraca sve vrhove dostupne iz njega udaljenost.c - modifikacija prvog programa, u kojoj za dane vrhove "start" i "cilj" racunamo duljinu najkraceg puta od starta do cilja sort.c - sortiranje queuea pomocu samo jednog dodatnog stacka Opisi ovih algoritama u pseudokodu nalaze se u fileu "opisi_algoritama.c" Zadaci: ------------------------------------- 1) Osmislite nekoliko primjera usmjerenih grafova i provedite (na papiru!) BFS algoritam na njima. 2) Napravite program koji radi isto sto i dostupni.c, ali tako da umjesto ATP-a Queue koristite Stack! Napomena: ------------------------------------- U zadacima s grafovima spremamo graf u memoriju pomocu matrice incidencije. Ako radimo s usmjerenim grafom G koji ima n vrhova (s oznakama {0, 1, ..., n-1}), možemo ga pamtiti tako da u n x n matricu M na mjesto M[i][j] upisemo 1 - ako postoji brid od vrha i do vrha j 0 - ako takav brid ne postoji Popis tipova i funkcija u ATP Queue: ------------------------------------- elementtype Queue void QuMakeNull(Queue *Q); elementtype QuFront(Queue Q); void QuEnqueue(elementtype x, Queue *Q); void QuDequeue(Queue *Q); int QuEmpty(Queue Q);