1 of 11

IN2010 Gruppe 4

Uke 5

2 of 11

Grafer

  • Representasjon
  • Sammenheng
    • Sykler
  • Graftraversering
    • DFS
    • BFS
  • Topsort

3 of 11

Representasjon

En graf er i bunn og grunn en mengde med noder og kanter

G = {N, E}

Denne kan vi representere på flere måter.

Nabomatriser og nabolister

4 of 11

Representasjon

5 of 11

Representasjon

6 of 11

Sammenheng

Om en graf er sammenhengende, kan man nå enhver node fra enhver annen node, ved å traversere over kanter og noder.

7 of 11

Sykler

For urettede grafer:

en sti med 3 eller flere noder, som forbinder første og siste node

For rettede grafer:

en sti med 2 eller flere noder, som forbinder første og siste node

8 of 11

DFS - Dybde først søk

Går så langt vekk man kan, til man ikke kan mer,

9 of 11

BFS

Sjekker alle de nærmeste nodene, før man går videre

10 of 11

Graden til en node

For en urettet graf: Hvor mange kanter som kobler noden med en annen node

For en rettet graf: skiller mellom inngrad og utgrad

Inngrad: Hvor mange kanter som ‘peker på’ noden

Utgrad: Hvor mange kanter noden bruker til å ‘peke på’ en annen node

11 of 11

Topsort - Topologisk Sortering

Fungerer kun på DAGs, og fungerer på alle DAGs (Directed Acyclic Graph)

Finn en node med inngrad 0, legg denne noden til i en output-liste, og fjerner den og alle kanter som peker ut fra den, fra grafen.