Escolar Documentos
Profissional Documentos
Cultura Documentos
Profundidade
Letcia Rodrigues Bueno
UFABC
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
Shirt
Shoes
Underwear
Suit
Watch
Pants
Belt
Shirt
Tie
Socks
Underwear
Pants
Shoes
Watch
Shirt
Belt
Tie
Suit
a
b
g
d
e
b
g
d
e
d
e
b
a
d
e
c
b
a
d
c
b
a
e
d
c
b
a
e
d
c
b
a
f
d
c
b
a
g
f
d
c
b
a
g
f
d
c
b
a
g
f
d
c
b
a
g
f
d
c
b
a
f
d
c
b
a
d
c
b
a
c
b
a
b
a
Algoritmo DFS
1 dfs(G, u, cont):
2
u.visitado = True
3
u.d = cont
4
para v em adj(u) faa
5
se no v.visitado ento
6
v.p = u
7
dfs(G, v, cont+1)
Algoritmo DFS
1 dfs(G, u, cont):
2
u.visitado = True
3
u.d = cont
4
para v em adj(u) faa
5
se no v.visitado ento
6
v.p = u
7
dfs(G, v, cont+1)
Anlise da complexidade:
Algoritmo DFS
1 dfs(G, u, cont):
2
u.visitado = True
3
u.d = cont
4
para v em adj(u) faa
5
se no v.visitado ento
6
v.p = u
7
dfs(G, v, cont+1)
Anlise da complexidade:
Cada vrtice passado
para mtodo dfs (linha
7 e 13): O(n)
Algoritmo DFS
1 dfs(G, u, cont):
2
u.visitado = True
3
u.d = cont
4
para v em adj(u) faa
5
se no v.visitado ento
6
v.p = u
7
dfs(G, v, cont+1)
Anlise da complexidade:
Cada vrtice passado
para mtodo dfs (linha
7 e 13): O(n)
A lista de adjacncia
de cada vrtice
percorrida uma vez
(linha 4): O(m)
Algoritmo DFS
1 dfs(G, u, cont):
2
u.visitado = True
3
u.d = cont
4
para v em adj(u) faa
5
se no v.visitado ento
6
v.p = u
7
dfs(G, v, cont+1)
Anlise da complexidade:
Cada vrtice passado
para mtodo dfs (linha
7 e 13): O(n)
A lista de adjacncia
de cada vrtice
percorrida uma vez
(linha 4): O(m)
Complexidade total:
O(n + m)
Ordenao Topolgica
Ordenao Topolgica
Ordenao Topolgica
Ordenao Topolgica
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
Shirt
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
Shirt
pants
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
Shirt
shoes
pants
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
shoes
Shirt
pants
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
shoes
Shirt
belt
pants
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
shoes
Shirt
suit
belt
pants
Socks
Shoes
Watch
Pants
Underwear
Suit
Belt
Tie
pt
suit
shoes
Shirt
belt
pants
Socks
Shoes
Underwear
Suit
Watch
Pants
Belt
Tie
pt
belt
suit
shoes
Shirt
pants
Socks
Shoes
Watch
Pants
Underwear
Suit
Shirt
Belt
Tie
pt
pants
belt
suit
shoes
Socks
Shoes
Watch
Pants
Underwear
Suit
Shirt
Belt
Tie
pt
pants
belt
suit
shoes
tie
Socks
Shoes
Underwear
Suit
Watch
Pants
Shirt
Belt
Tie
pt
tie
pants
belt
suit
shoes
Socks
Shoes
Underwear
Suit
Watch
Pants
Shirt
Belt
Tie
pt
tie
pants
belt
suit
shirt
shoes
Socks
Shoes
Underwear
Suit
Watch
Pants
Shirt
Belt
Tie
pt
shirt
tie
pants
belt
suit
shoes
Socks
Shoes
Underwear
Suit
Watch
Pants
Shirt
Belt
Tie
pt
shirt
tie
pants
belt
watch
suit
shoes
Socks
Shoes
Watch
Pants
Underwear
Suit
Shirt
Belt
Tie
pt
watch
shirt
tie
pants
belt
suit
shoes
Socks
Shoes
Watch
Pants
Underwear
Suit
Shirt
Belt
Tie
pt
watch
shirt
tie
pants
socks
belt
suit
shoes
Socks
Shoes
Underwear
Watch
Pants
Suit
Shirt
Belt
Tie
pt
socks
watch
shirt
tie
pants
belt
suit
shoes
Socks
Shoes
Underwear
Watch
Pants
Suit
Shirt
Belt
Tie
pt
socks
watch
shirt
tie
underwear
pants
belt
suit
shoes
Socks
Shoes
Underwear
Suit
Watch
Pants
Shirt
Belt
Tie
pt
underwear
socks
watch
shirt
tie
pants
belt
suit
shoes
1 dfs(G, u):
2
u.visitado = True
3
para v em adj(u) faa
4
se no v.visitado ento
5
dfs(G, v)
6
inserePrimeiro(L, u)
Anlise da corretude:
Anlise da corretude:
Vrtices so
adicionados no
comeo da lista
somente se no tem
mais arestas de sada;
Anlise da corretude:
Vrtices so
adicionados no
comeo da lista
somente se no tem
mais arestas de sada;
Sumidouros so
adicionados primeiro;
Anlise da corretude:
Vrtices so
adicionados no
comeo da lista
somente se no tem
mais arestas de sada;
Sumidouros so
adicionados primeiro;
Depois, so
adicionados vrtices
satisfeitos;
Anlise da corretude:
Vrtices so
adicionados no
comeo da lista
somente se no tem
mais arestas de sada;
Sumidouros so
adicionados primeiro;
Depois, so
adicionados vrtices
satisfeitos;
Finalmente, fontes so
adicionadas;
Exerccios
Bibliografia