Grafos e Árvores
-
Upload
patrick-momoli -
Category
Education
-
view
3.455 -
download
1
description
Transcript of Grafos e Árvores
![Page 1: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/1.jpg)
Grafos e Árvores
Jeane Melo
![Page 2: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/2.jpg)
Roteiro
Grafos Definições Representações
Árvores Definição Representação
Árvores Binárias Definição
![Page 3: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/3.jpg)
Grafos
Modelo matemático que representa relações entre objetos
Exemplos Navegação na Web
Documentos referenciam outros documentos Objetos: Documentos; Conexões: links.
Roteiro turístico Qual o caminho mais curto para realizar o roteiro?
Partição de um programa em um conjunto de estados
![Page 4: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/4.jpg)
Grafos
Conjunto de Vértices (V) e Arestas (E) G(V,E)
V (Vértices) Conjunto finito não vazio
E (Arestas) Conjunto de pares não ordenados de elementos distintos de
V Pares não ordenados (Grafos simples) e E; e=(v, w) v e w, extremidades da aresta, são ditos vértices adjacentes
![Page 5: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/5.jpg)
Grafos Direcionados
Conjunto de Vértices (V) e Arestas (E)G(V,E)
V Vértices Conjunto finito não vazio
E Arestas Conjunto de pares ordenados de elementos distintos
de V Pares ordenados (Grafos direcionados)
![Page 6: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/6.jpg)
Grafos
Um grafo G(V,E) é trivial quando |V| = 1. Representação geométrica
Grafo Trivial
Grafo (Grafo Simples) Grafo Direcionado
![Page 7: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/7.jpg)
Grafos Modelo matemático que representa
relações entre objetos Exemplos
Ligações aéreas entre cidades
Recife
Natal
Salvador
São Paulo
Rio de Janeiro
Brasília
Paris
Manaus
Brasília
![Page 8: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/8.jpg)
Grafos (variações)
Arestas direcionadas Arestas múltiplas Vértices isolados Arestas com pesos,
etc.Recife
Natal
Salvador
São Paulo
Rio de Janeiro
Brasília
Paris
Manaus
![Page 9: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/9.jpg)
Grafos
Arestas tipo (v,v)Laços
Aresta e=(v,w)e é incidente a v e a wv é adjacente a w
v
w
e
![Page 10: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/10.jpg)
Grafo - G(V, E)
Grau de um vértice v – grau(v) Define-se grau de um vértice v V, como o número de vértices
adjacentes a v.
Caminho de k vértices Um caminho de k vértices é formado por (k – 1) arestas (v1,v2),(v2,v3),...,
(vk-1,vk). O valor (k – 1) é o comprimento do caminho . Caminho fechado (ciclo): v1 = vk
Distância A distância d(v,w) entre dois vértices v, w é o comprimento do menor
caminho entre v e w.
![Page 11: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/11.jpg)
Grafos
Grau(Recife) = 6 Caminho de 3
vértices: (Paris, Recife);
(Recife, Brasília); 2 arestas
Distância (Paris, Brasília)=2
Recife
Natal
Salvador
São Paulo
Rio de Janeiro
Brasília
Paris
Manaus
![Page 12: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/12.jpg)
Representação Geométrica
3
2
4
6
5
7
1
8
![Page 13: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/13.jpg)
Representação Interna
Matriz de adjacências Binária Inteira ou reais Existe ou não aresta
entre dois pontos O(n2)
1 2 3 4 5 6 7 8
1 0 0 1 1 1 1 1 0
2 0 0 1 0 0 0 0 0
3 1 1 0 1 1 1 1 0
4 0 0 1 0 1 0 0 0
5 0 0 1 1 0 1 1 0
6 0 0 1 0 1 0 1 0
7 0 0 1 0 1 1 0 1
8 0 0 0 0 0 0 1 0
![Page 14: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/14.jpg)
Representação Interna
Listas de Adjacências Cada célula do array
possui um apontador para uma lista de arestas que incidem neste vértice.
O(n+2m)
1
2
3
...
8
3
1
7
3 4 5 6 7
2 4 5 6 7
![Page 15: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/15.jpg)
Grafos
SubgrafoUm subgrafo G’(V’, E’) de G(V, E) é um
grafo tal que:
V’ V e E’ E (V’ x V’) Grafos Conexos
São grafos onde existe um caminho de um vértice para qualquer outro.
![Page 16: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/16.jpg)
Grafos e Árvores
As estruturas estudadas até o momento são ditas estruturas lineares Cada nó possui um antecessor e um
sucessor Árvores (estruturas não lineares)
Cada nó pode ter vários sucessores e apenas um antecessor
Relação Hierárquica
![Page 17: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/17.jpg)
Árvores
Árvore genealógica Organograma de uma empresa
![Page 18: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/18.jpg)
Árvores
Definição formalConjunto finito de um ou mais nós, tais que:
existe um nó denominado raiz os demais nós formam
s1, s2, ... sm, m >= 0, conjuntos disjuntos
Cada um desses conjuntos (s1, s2, ... sm ) também é uma árvore (sub-árvore)
![Page 19: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/19.jpg)
Árvores
Terminologia RAIZ
Nó de origem da árvore; FOLHAS
Nós que não têm filhos; GRAU DE UM NÓ
Número de filhos de cada nó (número de sub-árvores de um nodo); NÍVEL DE UM NÓ
Para a raiz o nível é zero (por definição) Para os demais nós é a distância do nodo até o nodo raiz;
ALTURA DA ÁRVORE É o nível mais alto da árvore;
![Page 20: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/20.jpg)
Árvores (T)
Uma árvore T(V,E) é um grafo acíclico e conexo
Uma árvore T(V,E) é um grafo(simples), conexo com n-1 arestas (onde n é o número de vértices).
FlorestaConjunto de árvores
![Page 21: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/21.jpg)
Árvore Binária
Conjunto finito de nós queOu não contém nenhum nóOu, é formada por três conjuntos disjuntos de nós
Raiz Sub-árvore da esquerda Sub-árvore da direita
Se tem apenas 1 filho indicar se é da direita ou da esquerda
![Page 22: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/22.jpg)
Árvore Binária
![Page 23: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/23.jpg)
Árvore Binária
Raiz Pai Filho direita Filho esquerda Descendente Folha
![Page 24: Grafos e Árvores](https://reader033.fdocuments.net/reader033/viewer/2022052307/54972d09ac7959292e8b5290/html5/thumbnails/24.jpg)
Árvore Binária0
1
2
3
4
Nível
Altura