Escolar Documentos
Profissional Documentos
Cultura Documentos
A altura de uma árvore com raiz é o máximo das alturas das suas folhas (a altura de
uma folha é a sua distância à raiz da árvore).
Uma árvore de decisão (árvore ordenada com raiz) na qual todo o vértice interno tem no
máximo dois filhos (designados de filho esquerdo e/ou filho direito) diz-se uma árvore
binária. Se cada vértice interno tem exatamente dois filhos, a árvore diz-se uma árvore
binária completa.
3. Em cada uma das alíneas, dê um exemplo de um grafo que satisfaça a condição indicada,
ou mostre que não existe um tal grafo.
(b) Uma árvore com pelo menos 3 vértices, duas folhas, e os restantes vértices com
grau 3 ou mais.
(c) Um grafo desconexo com 10 vértices e 8 arestas.
(d) Um grafo desconexo com 12 vértices, 11 arestas e nenhum ciclo.
(e) Uma árvore com 6 vértices e soma do graus de todos os vértices igual a 12.
(f) Um grafo conexo com 6 arestas, 4 vértices e exatamente 2 ciclos.
(g) Um grafo com 6 vértices, 6 arestas e sem ciclos.
4. A altura de uma árvore com raiz é o máximo das alturas das suas folhas (a altura de
uma folha é a sua distância à raiz da árvore). Uma árvore de decisão (árvore ordenada
Basiccom
Concepts
raiz) na in Graph
qual todo oTheory
vértice interno tem no máximo dois filhos (designados de filho
esquerdo e/ou filho direito) diz-se uma árvore binária. Se cada vértice interno tem
leaf. A rooted
exatamente dois tree in which
filhos, eachdiz-se
a árvore non-leaf
umavertex hasbinária
árvore at mostcompleta.
two children is called
a binary tree. If each non-leaf vertex has exactly two children, the tree is called a
fullProve
(a) binaryque numa árvore binária com ` folhas e altura h, se tem ` ≤ 2h .
tree.
(b)(a)Numa
If a binary
árvoretree has l leaves
binária com `and heightqual
folhas, h prove
é othat
valor 2h . (Taking
l ≤máximo logarithms
possível para a sua
gives log2 (l) ≤ h.)
altura?
(c)(b)Numa
A binary treebinária
árvore has l leaves. What
completa comcan` you say about
folhas, qual é the maximum
o valor value
máximo of h? para
possível
(c)a sua altura?
Given a full binary tree with l leaves, what is the maximum height h?
(d)(d)Numa
Givenárvore bináriatree
a full binary completa com ` what
with l leaves, folhas,
is qual é o valorheight
the minimum mínimoh? possível para
a sua altura?
(e) Given a binary tree of l leaves, what is the minimum height h?
(e) Numa árvore binária com ` folhas, qual é o valor mínimo possível para a sua
altura?
3.5. In each of the following cases, state whether or not such a tree is possible.
5. Em(a)
cada uma das seguintes alíneas, diga se existe ou não uma arvore nessas condições.
A binary tree with 35 leaves and height 100.
(a)(b)Uma árvore
A full binária
binary com2135leaves
tree with folhasand height 100.
e altura 21.
(b)(c)Uma árvoretree
A binary binária completa
with 33 21 folhas
comheight
leaves and 5. e altura 21.
(c)(d)Uma árvoretree
A rooted binária com533
of height folhas
where e altura
every 5. vertex has 3 children and there
internal
(d) Umaare árvore
365 vertices.
com raiz com 365 vertices e altura 5 em que cada vértice interno tem
3 filhos.
3.6. For each of the following graphs:
6. Para cada um dos seguintes grafos:
A B A B A B
D C D C D C
(1) (2) (3)
(a)(a)Determine
Find all spanning
todas astrees.
suas árvores geradoras.
(b)(b)Determine
Find all spanning
todas astrees
suasup to isomorphism.
árvores geradoras a menos de isomorfismo.
(c)(c)Determine
Find all depth-first spanning
todas as suas treesderooted
árvores at A.com raiz A.
Trémaux
(d) Find all depth-first spanning trees rooted at B.
2 2016/17
3.7. For each of the following graphs:
(a) Find all spanning trees.
(b) Find all spanning trees up to isomorphism.
M2007 – (c) Find all depth-first
Algoritmos spanning
em Matemática trees rooted at A.
Discreta Folha de Problemas N.o 7
(d) Find all depth-first spanning trees rooted at B.
(d) Determine todas as suas árvores de Trémaux com raiz B.
3.7. For each of the following graphs:
7. Para cada um dos seguintes grafos:
2 2 2
A B A B A B
1
1 2 2 1 2 1 2
2
2 1 1
D C D C
Section
(1) 4: Rates of
(2)
Growth and DAnalysis
(3)
C
of Algorithms
Referring to Theorem
(a) Determine uma 5sua
and the geradora
árvore discussion following
minimail of Kruskal’s
usando o algoritmoalgorithm:
de Prim.
(b) Determine
(a) Find a minimumumaspanning
sua árvoretree
geradora
usingminimail
Prim’s usando o algoritmo de Kruskal.
algorithm
(c) Determine a sua árvore de Trémaux com raiz K usando a ordem total nos vértices
(b) Finddada
a minimum spanning tree using Kruskal’s algorithm.
pela ordem alfabética.
(c) Find a depth-first spanning tree rooted at K.
9. Determine caminhos de distância (pesada) mínima entre o vértice u0 e os restantes
vértices do seguinte grafo com peso nas arestas:
Suppose we have an algorithm and someone asks us “How good is it?” To answer that
question, we need to know what they mean. They might mean “Is it correct?” or “Is it
understandable?” or “Is it easy to program?” We won’t deal with any of these.
They also might mean “How fast is it?” or “How much space does it need?” These
two questions can be studied by similar methods, so we’ll just focus on speed. Even
2016/17
now, the question is not precise enough. Does the person mean “How fast is it on this 3
particular problem and this particular machine using this particular code and this particular
compiler?” We could answer this simply by running the program! Unfortunately, that
Folha de Problemas N.o 7 M2007 – Algoritmos em Matemática Discreta
A empresa está interessada em fazer uma tabela com os preços dos percursos mais
baratos entre pares de cidades. Faça essa tabela.
11. Um lobo, uma cabra e um repolho estão na margem de um rio e um barqueiro quer
levá-los para a outra margem. Como o barco é pequeno, o barqueiro não pode levar
mais do que um deles de cada vez. Por motivos óbvios, o lobo e a cabra não podem
ser deixados sozinhos sem supervisão do barqueiro, e o mesmo se passa com a cabra e
o repolho. Como é que o barqueiro os pode transportar para a outra margem com o
seu barco? Use grafos para modelar e resolver este problema!
12. Dois homens têm três jarros, de capacidades 8, 5 e 3 litros, respetivamente. O jarro de
8 litros está cheio de vinho e os outros dois estão vazios. Qual é a forma mais simples
de dividirem o vinho em partes iguais?
13. Nos exercícios que se seguem G é um grafo simples. Em cada um dos casos diga,
justificando, se as condições indicadas garantem que G é árvore, se garantem que G
não é árvore ou se não garantem nem uma coisa nem a outra.
4 2016/17
M2007 – Algoritmos em Matemática Discreta Folha de Problemas N.o 7
15. Mostre que um grafo é uma árvore se e só se não contém nenhum ciclo mas qualquer
nova aresta que lhe seja adicionada cria exactamente um ciclo.
19. Mostre que os únicos grafos bipartidos completos que são árvores são as estrelas K1,n .
20. Mostre que qualquer árvore com pelo menos dois vértices é um grafo bipartido.
21. Seja G um grafo com 4 componentes conexas e 24 arestas. Qual é o número máximo
de vértices de G?
22. Um grafo G diz-se unicíclico se for conexo e tiver um único ciclo. Mostre que um grafo
é unicícico se e só se for conexo e tiver tantos vértices como arestas.
23. Seja G uma floresta constituída por k árvores. Qual é o número mínimo de arestas que
é necessário acrescentar a G para obter uma árvore?
25. Determine todas as árvores geradoras dos seguintes grafos conexos e determine, em
cada caso, quais delas são não-isomorfas.
2016/17 5
Folha de Problemas N.o 7 M2007 – Algoritmos em Matemática Discreta
26. Seja T uma árvore com pelo menos k ≥ 2 arestas. Quantas componentes conexas é
que tem o subgrafo que se obtém retirando k das arestas de T ?
28. Seja G um grafo sem lacetes e com uma única árvore geradora. Mostre que G é uma
árvore.
29. Seja G uma árvore com n vértices. Mostre que o comprimento do passeio fechado mais
curto que contém todas as arestas de G pelo menos uma vez é 2(n − 1).
31. O seguinte algoritmo é mais um exemplo de um algoritmo guloso que determina uma
árvore geradora minimal num grafo conexo G com função peso nas arestas. Vamos
eliminando uma por uma as arestas de G de maior peso, desde que fazê-lo não resulte
num grafo desconexo. O subgrafo obtido quando não for possível prosseguir é uma
árvore geradora minimal de G. Aplique este algoritmo aos grafos do exercício anterior.
32. Considere o grafo completo Kn com vértices {1, . . . , n}, em que o peso da aresta de-
terminada pelos vértices i e j é i + j. Aplique o algoritmo de Kruskal para obter uma
árvore geradora minimal de cada um dos seguintes grafos:
6 2016/17
M2007 – Algoritmos em Matemática Discreta Folha de Problemas N.o 7
33. Repita o exercício anterior assumindo que o peso da aresta de Kn determinado pelos
vértices i e j é |i − j|.
34. Seja G um grafo conexo com função peso nas arestas cujas arestas têm pesos distintos.
Mostre que existe uma única árvore geradora minimal de G.
2016/17 7