SlideShare uma empresa Scribd logo
1 de 128
Baixar para ler offline
# Pesquisa e Ordenação #
Aula Apoio - Grafos
Prof. Leinylson Fontinele Pereira
17:20 2
TEOREMA
Pesquisa e Ordenação - Aula Apoio - Grafos
17:20 3
Um grafo conexo G é um grafo de
Euler se e somente se todos os seus
vértices são de grau par.
Pesquisa e Ordenação - Aula Apoio - Grafos
17:20 4
Grafos?
Pesquisa e Ordenação - Aula Apoio - Grafos
Grafo Não é Algo Recente
17:20
 Quem se lembra das aulas de estrutura de dados?
 Vetores (arrays);
 Fila;
 Pilha;
 Árvores;
 Grafos...
Pesquisa e Ordenação - Aula Apoio - Grafos
O Mundo Não Gira Apenas no Banco Relacional
17:20
 Muita gente ainda está viciada
nos RDBMs, quando pensa em um
novo projeto, já começa imaginar a
estrutura de tabelas;
 Um arquiteto precisa pensar na
melhor solução para cada caso e
saber que o mundo da persistência
não tem apenas os RDBMs.
Pesquisa e Ordenação - Aula Apoio - Grafos
Pensar Fora da Caixa 
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Ser Eficiente
17:20
 Usar a tecnologia certa no momento certo vai tornar seu trabalho
absurdamente eficiente!
Pesquisa e Ordenação - Aula Apoio - Grafos
Grafos?
17:20
 Leonhard Euler
 Inventor da teoria de grafos (1736)
 Qual a possibilidade de atravessar todas as
pontes da cidade sem repetir nenhuma?
 Grafo Euleriano
Pesquisa e Ordenação - Aula Apoio - Grafos
Exemplo Clássico: Rede Social
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Isso é um Grafo?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Exemplos de Grafos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Grafo Regular
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Grafo Regular
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Multigrafo
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Subgrafo
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Grafos Estrela
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Teoria dosGrafos
17:20
A teoria dos grafos é um ramo da matemática que estuda
as relações entre os objetos de um determinado conjunto.
Para tal são empregadas estruturas chamadas de grafos,
G(V,A), onde V é um conjunto não vazio de objetos
denominados vértices e A é um conjunto de pares não
ordenados de V, chamado arestas.
Pesquisa e Ordenação - Aula Apoio - Grafos
Representação de Grafos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Para que usar Grafos?
17:20
 Sistemas de recomendação
 Catálogo de produtos
 Filtragem colaborativa
 Redes sociais (o clássico)
 Sistemas geoespaciais
 e muito mais...
Pesquisa e Ordenação - Aula Apoio - Grafos
Quais as Opções para usar Grafos?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Neo4J
17:20
 Persistência apenas em Grafos;
 Implementação em Java;
 É o banco mais popular em Grafos;
 GPL;
 Cypher Query Language
Pesquisa e Ordenação - Aula Apoio - Grafos
Neo4J
17:20
MATCH (keanu:Person { name:'Keanu Reeves' })-
[:ACTED_IN]-(movie:Movie)
RETURN movie
Pesquisa e Ordenação - Aula Apoio - Grafos
ArangoDB
17:20
 Multi Modelagem:
 Grafos
 Documentos
 Query Language poderosa (AQL);
 Desenvolvido em C++
 Interface REST HTTP;
 FOXX → Framework que auxilia desenvolvimento web;
 Drivers nativos para quase todas as linguagens;
 Livre, mas possui suporte comercial.
Pesquisa e Ordenação - Aula Apoio - Grafos
ArangoShell
17:20
arangosh> var graph_module = require("org/arangodb/general-graph");
arangosh> var graph = graph_module._create("myGraph");
arangosh> graph;
[ Graph myGraph EdgeDefinitions: [ ] VertexCollections: [ ] ]
arangosh> graph._addVertexCollection("shop");
arangosh> graph._addVertexCollection("customer");
arangosh> graph._addVertexCollection("pet");
arangosh> graph
arangosh> var rel = graph_module._directedRelation("isCustomer", ["shop"], ["customer"]);
arangosh> graph._extendEdgeDefinitions(rel);
arangosh> graph;
[ Graph myGraph EdgeDefinitions: [
"isCustomer: [shop] -> [customer]"
] VertexCollections: [ ] ]
Pesquisa e Ordenação - Aula Apoio - Grafos
OrientDB
17:20
 Assim como ArangoDB, é multi-modelagem:
 Documento
 Grafos
 Desenvolvido em Java;
 Suporta transações ACID;
 Possui linguagem semelhante a SQL;
 Livre, mas possui suporte comercial também.
Pesquisa e Ordenação - Aula Apoio - Grafos
Query Language - Exemplos
17:20
orientdb> insert into V set name = 'Jay'
create record with RID #9:0
orientdb> create vertex V set name = 'Jay'
create vertex with RID #9:1
orientdb> create edge Eat from (select from Person where name =
'Luca') to (select from Restaurant where name = 'Dante')
Pesquisa e Ordenação - Aula Apoio - Grafos
Definição
17:20
 Como representar um conjunto de objetos e as suas relações?
Pesquisa e Ordenação - Aula Apoio - Grafos
Diversos tipos de aplicações necessitam disso
 Um grafo é um modelo matemático que
representa as relações entre objetos de um
determinado conjunto.
Definição
17:20
 Grafos em computação
Pesquisa e Ordenação - Aula Apoio - Grafos
Forma de solucionar problemas computáveis
Buscam o desenvolvimento de algoritmos mais
eficientes
 Qual a melhor rota da minha casa até o
restaurante?
 Duas pessoas tem amigos em comum?
Definição
17:20
 Um grafo G(V,A) é definido por dois conjuntos
Pesquisa e Ordenação - Aula Apoio - Grafos
Conjunto V de vértices (não vazio)
 Itens representados em um grafo;
Conjunto A de arestas
 Utilizadas para conectar pares de vértices, usando
um critério previamente estabelecido.
Definição
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 Vértice é cada um dos itens representados no grafo.
Pesquisa e Ordenação - Aula Apoio - Grafos
 O seu significado depende da natureza
do problema modelado
 Pessoas, uma tarefa em um projeto,
lugares em um mapa, etc.
Conceitos Básicos
17:20
 Aresta liga dois vértices
Pesquisa e Ordenação - Aula Apoio - Grafos
 Diz qual a relação entre eles
 Dois vértices são adjacentes se existir
uma aresta ligando eles.
 Pessoas (parentesco entre elas ou amizade), tarefas
de um projeto (pré-requisito entre as tarefas),
lugares de um mapa (estradas que existem ligando
os lugares), etc.
Conceitos Básicos
17:20
 Praticamente qualquer objeto pode ser
representado como um grafo.
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 Praticamente qualquer objeto pode ser
representado como um grafo.
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 As arestas podem ou não ter direção
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 As arestas podem ou não ter direção
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 Grau
 Indica o número de arestas que conectam um vértice do
grafo a outros vértices
•número de vizinhos que aquele vértice possui no grafo
 No caso dos dígrafos, temos dois tipos de grau:
•graude entrada: número de arestas que chegam ao vértice;
•graude saída: número de arestas que partem do vértice
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 Laço
 Uma aresta é chamada de laço
se seu vértice de partida é o
mesmo que o de chegada
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 Caminho
 Um caminho entre dois vértices é uma sequência de vértices onde cada
vértice está conectado ao vértice seguinte por meio de uma aresta.
Pesquisa e Ordenação - Aula Apoio - Grafos
Conceitos Básicos
17:20
 Ciclo
 Caminho onde o vértice inicial e o final são o mesmo vértice.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo trivial
 Possui um único vértice e nenhuma aresta
 Grafo simples
 Grafo não direcionado, sem laços e sem arestas
paralelas
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo completo
 Grafo simples onde cada vértice se conecta a todos os
outros vértices do grafo.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo regular
 Grafo onde todos os seus vértices possuem o mesmo grau
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Subgrafo
 Gs(Vs, As) é um subgrafo de G(V, A) se o conjunto de vértices Vs for um subconjunto
de V, Vs ⊆ V, e se o conjunto de arestas As for um subconjunto de A, As ⊆ A.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo conexo e desconexo
 Grafo conexo: existe um caminho ligando quaisquer dois vértices.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafos isomorfos
Dois grafos, G1(V1, A1) e G2(V2, A2),
são ditos isomorfos se existe uma função que
faça o mapeamento de vértices e arestas de
modo que os dois grafos se tornem coincidentes.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafos isomorfos
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo ponderado
 É um grafo que possui pesos associados a cada uma de suas arestas.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo Euleriano
 Grafo que possui um ciclo que visita todas as suas arestas apenas
uma vez, iniciando e terminando no mesmo vértice.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo Semi-Euleriano
 Grafo que possui um caminho aberto que visita todas as
suas arestas apenas uma vez.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Grafos
17:20
 Grafo Hamiltoniano
 Grafo que possui um caminho que visita todos os seus
vértices apenas uma vez.
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Representação
17:20
 Como representar um grafo no computador?
 Matriz de Adjacência
 Lista de Adjacência
 Qual a representação que deve ser utilizada?
 Depende da aplicação!
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Representação
17:20
 Matriz de adjacência
 Utiliza uma matriz N x N para armazenar o grafo, onde
N é o número de vértices
• Alto custo computacional, O(N2
)
Uma aresta é representada por uma marca na posição
(i , j) da matriz
• Aresta liga o vértice i ao j
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Representação
17:20
 Matriz de adjacência
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Representação
17:20
 Lista de adjacência
 Utiliza uma lista de vértices para descrever as relações entre
os vértices.
•Um grafo contendo N vértices utiliza um array de ponteiros de
tamanho N para armazenar os vértices do grafo
•Para cada vértice é criada uma lista de arestas, onde cada
posição da lista armazena o índice do vértice a qual aquele
vértice se conecta
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Representação
17:20
 Lista de adjacência
Pesquisa e Ordenação - Aula Apoio - Grafos
Tipos de Representação
17:20
 Qual representação utilizar?
Lista de adjacência é mais indicada para um grafo que
possui muitos vértices mas poucas arestas ligando-os.
A medida que o número de arestas cresce e não havendo
nenhuma outra informação associada a aresta, o uso de
uma matriz de adjacência se torna mais eficiente
Pesquisa e Ordenação - Aula Apoio - Grafos
Material: https://sites.google.com/site/leinylsonuespi
17:20
Material baseado nas aulas de:
 Christiano Anderson, Grafos - Uma abordagem divertida
 Matemática com o Google Earth, Professor Fernando Brito
 Linguagem C Descomplicada , Dr. André R. Backes
Pesquisa e Ordenação - Aula Apoio - Grafos
17:20 76
Desafio!
Pesquisa e Ordenação - Aula Apoio - Grafos
Desafio MatematicamenteImpossível!!
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Do que Trata o Desafio?
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Explicaçãodo Desafio
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
17:20 80
Atividade
Pesquisa e Ordenação - Aula Apoio - Grafos
17:20 81
Konigsberg Bridges
Pesquisa e Ordenação - Aula Apoio - Grafos
Situação-problema
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Por muito tempo os moradores da cidade de Königsberg
(atualmente Kaliningrado, na Rússia) perguntavam-se se era
possível fazer um passeio na cidade cruzando todas as sete
pontes que cortavam o rio Pregel.
 Passando apenas uma vez por cada ponte, retornando ao
ponto de partida, ou seja, percorrendo um caminho fechado.
Mapa de Königsberg de 1652
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Konigsberg Bridges
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Muitos tentaram fazer um percurso,
mas as tentativas foram sempre
falhas.
 Até que o matemático suíço
Leonhard Euler (1707 − 1783),
usando argumentos muito simples,
provou em 1736 que não era
possível realizar tal feito.
Konigsberg Bridges
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Ele usou um diagrama, chamado de grafo2, para reproduzir os principais
elementos do mapa, onde desenhou pontos (vértices) representando as porções de
terra e linhas (arestas) representando os percursos pelas sete pontes.
Konigsberg Bridges
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Daí Euler percebeu que só seria possível fazer o trajeto
passando uma única vez em cada ponte e retornando ao ponto
de partida, se houvesse, partindo de cada vértice, um número
par de arestas
 Isto é, todos os vértices deveriam ser de grau par.
 Assim, esse famoso problema matemático tornou-se ponto de
partida para o desenvolvimento da Teoria dos Grafos.
Konigsberg Bridges
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Da mesma forma, outras situações reais podem ser
representadas por grafos como, por exemplo:
 Esquemas de circuitos integrados; rotas otimizadas para empresas de transporte
 sistemas de engenharia de tráfego;
 Distribuição de serviços de energia, água, e telefone.
 Além disso, também é possível modelar relações de
hierarquia, amizade e trabalho.
Konigsberg Bridges
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Konigsberg Bridges – Várias Abstrações
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Modelo do Problema
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
𝑉 = { 𝑚 | 𝑚 é 𝑢𝑚𝑎 𝑖𝑙ℎ𝑎 𝑜𝑢 𝑢𝑚𝑎 𝑚𝑎𝑟𝑔𝑒𝑚 }
𝐴 = { (𝑚1, 𝑚2, 𝑝} | 𝑒𝑥𝑖𝑠𝑡𝑒 𝑢𝑚𝑎 𝑝𝑜𝑛𝑡𝑒 𝑝 𝑢𝑛𝑖𝑛𝑑𝑜 𝑎𝑠 𝑚𝑎𝑟𝑔𝑒𝑛𝑠/𝑖𝑙ℎ𝑎𝑠 𝑚1 𝑒 𝑚2 }
𝑉 = { 𝐴, 𝐵, 𝐶, 𝐷 }
𝐴 = { (𝐴, 𝐶, 𝑐), (𝐴, 𝐶, 𝑑), (𝐴, 𝐵, 𝑎), (𝐴, 𝐵, 𝑏), (𝐴, 𝐷, 𝑒), (𝐵, 𝐷, 𝑓), (𝐶, 𝐷, 𝑔) }
Kaliningrado - Federação Russa (Atualmente)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Konigsberg Bridges (Atualmente)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Relaçãodo DesafiocomKonigsberg Bridges
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Teoria dos Grafos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Um Caminho Euleriano é um caminho em um
grafo que visita cada aresta apenas uma vez.
 Com caso especial, um Circuito Euleriano é um
caminho Euleriano que começa e termina no
mesmo vértice.
Grafo de Königsberg
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Teoria dos Grafos
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Pela análise do grafo modelo G para o problema das pontes
de Königsberg, observa-se que Para Todo v E V, gr(v) é ímpar.
Logo, o grafo G não é um grafo de Euler.
 Isso significa que o problema não possui solução. Note que
não é necessário que tenhamos Para Todo v E V, gr(v) é impar ,
basta que Exista Pelo Menos Um v E V | gr(v) é impar para
concluirmos que o grafo em questão não é um grafo de Euler.
Grafo Euleriano
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Caminho Hamiltoniano
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Um caminho hamiltoniano é um caminho que permite passar
por todos os vértices de um grafo G, não repetindo nenhum, ou,
seja, passar por todos uma e uma só vez por cada.
Caminho Hamiltoniano
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Matriz de Adjacência
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Uma matriz de adjacência é uma das formas de se representar um grafo.
 Dado um grafo G com n vértices, podemos representá-lo em uma matriz 𝑛 𝑥 𝑛
𝐴(𝐺) = [𝑎𝑖𝑗] (ou simplesmente 𝐴).
Listade Adjacência
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Problema do Caixeiro-Viajante – (PCV)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 É um problema que tenta determinar a menor rota para
percorrer uma série de cidades (visitando uma única vez cada
uma delas), retornando à cidade de origem.
 Trata-se de um problema de otimização inspirado na
necessidade dos vendedores em realizar entregas em diversos
locais (as cidades) percorrendo o menor caminho possível,
reduzindo o tempo necessário para a viagem e os possíveis
custos com transporte e combustível.
Problema do Caixeiro-Viajante – (PCV)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
AlgoritmoACO (Ant Colony Optimization)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 Nos algoritmos ACO, as formigas são simples agentes que, no caso
do PCV, constroem circuitos através do movimento entre cidades
no grafo do problema.
 A solução construída pelas formigas é elaborada por trilhos de
feromonas (artificiais) e pela disponibilidade de informação
heurística, à priori.
 Quando o algoritmo ACO é aplicado, é associada uma força da
feromona, onde 𝜏𝑖𝑗(𝑡) é uma informação numérica que é
modificada durante o algoritmo, e t é o contador das iterações
AlgoritmoACO (Ant Colony Optimization)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
AlgoritmoACO (Ant Colony Optimization)
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Teorema das QuatroCores
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Teorema das QuatroCores
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Teorema das QuatroCores
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
17:20 110
Agora é sua vez!
Pesquisa e Ordenação - Aula Apoio - Grafos
Atividade como Google Maps
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
 As Sete Pontes de Königsberb
 Construa o grafo no quadro (indicando as coordenadas) e
determine um percurso optimizado do trecho descrito a seguir:
 Partindo da sua residência, trace o menor percurso para chegar à
Faculdade Maurício de NASSAU. Seu trajeto deve incluir uma visita à
Catedral de N. S. das Graças, Rodoviária de Municipal e Parnaíba
Shopping, retornando à sua residência, sem repetir nenhuma rua ou
ponte, não necessariamente nesta ordem.
Atividade como Google Maps
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Atividade como Google Maps
17:20
Pesquisa e Ordenação - Aula Apoio - Grafos
Alguma Dúvida?
17:20
Até a prova!
leinylson@gmail.com
Prática 
17:20 115
As aulas práticas foram baseadas no material de
Linguagem C Descomplicada , Dr. André R. Backes.
Disponível em: https://programacaodescomplicada.wordpress.com/
Estrutura de Dados - Aula Apoio - Grafos
ListaEstática Sequencial
17:20
 ListaSequencial.h
 Os protótipos das funções
 O tipo de dado armazenado na lista
 O ponteiro lista
 Tamanho do vetor usado na lista
Estrutura de Dados - Aula Apoio - Grafos
ListaEstática Sequencial
17:20
 ListaSequencial.c
 O tipo de dados lista
 Implementar as suas funções
Estrutura de Dados - Aula Apoio - Grafos
17:20 118
Definindo o Grafo
Estrutura de Dados - Aula Apoio - Grafos
Definindoo Grafo: TADGrafo
17:20
Estrutura de Dados - Aula Apoio - Grafos
17:20 120
Criando o Grafo
Estrutura de Dados - Aula Apoio - Grafos
Criandoo Grafo
17:20
Estrutura de Dados - Aula Apoio - Grafos
Criandoo Grafo
17:20
Estrutura de Dados - Aula Apoio - Grafos
17:20 123
Destruindo o Grafo
Estrutura de Dados - Aula Apoio - Grafos
Destruindoo Grafo
17:20
Estrutura de Dados - Aula Apoio - Grafos
Destruindoo Grafo
17:20
Estrutura de Dados - Aula Apoio - Grafos
17:20 126
Inserindo uma
Aresta no Grafo
Estrutura de Dados - Aula Apoio - Grafos
Inserindo uma Aresta no Grafo
17:20
Estrutura de Dados - Aula Apoio - Grafos
Inserindo uma Aresta no Grafo
17:20
Estrutura de Dados - Aula Apoio - Grafos

Mais conteúdo relacionado

Mais procurados

Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoLeinylson Fontinele
 
Estatística 8.º ano
Estatística 8.º anoEstatística 8.º ano
Estatística 8.º anoaldaalves
 
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)Leinylson Fontinele
 
Introdução a Teoria dos Grafos
Introdução a Teoria dos GrafosIntrodução a Teoria dos Grafos
Introdução a Teoria dos GrafosChromus Master
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisFabrício Lopes Sanchez
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Leinylson Fontinele
 
Comandos DDL para o MySQL
Comandos DDL para o MySQLComandos DDL para o MySQL
Comandos DDL para o MySQLArley Rodrigues
 
Geometria espacial de posição
Geometria espacial de posiçãoGeometria espacial de posição
Geometria espacial de posiçãoELIZEU GODOY JR
 
Seminário sobre Grafos por Samyra Lara
Seminário sobre Grafos por Samyra LaraSeminário sobre Grafos por Samyra Lara
Seminário sobre Grafos por Samyra LaraIFPB
 
Estrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas EstáticasEstrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas EstáticasLeinylson Fontinele
 
Conceitos geraiss gestão de base dados
Conceitos geraiss gestão de base dadosConceitos geraiss gestão de base dados
Conceitos geraiss gestão de base dadosBruno Pereira
 
Aula de fração
Aula de fraçãoAula de fração
Aula de fraçãoNeilor
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPDaniel Brandão
 
Análise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de GrafosAnálise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de GrafosDelacyr Ferreira
 
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Leinylson Fontinele
 

Mais procurados (20)

Bases De Dados
Bases De DadosBases De Dados
Bases De Dados
 
Grafos e Árvores
Grafos e ÁrvoresGrafos e Árvores
Grafos e Árvores
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Estatística 8.º ano
Estatística 8.º anoEstatística 8.º ano
Estatística 8.º ano
 
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Estrutura de Dados - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
 
Introdução a Teoria dos Grafos
Introdução a Teoria dos GrafosIntrodução a Teoria dos Grafos
Introdução a Teoria dos Grafos
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
Banco de Dados I - Aula 06 - Banco de Dados Relacional (Modelo Lógico)
 
Comandos DDL para o MySQL
Comandos DDL para o MySQLComandos DDL para o MySQL
Comandos DDL para o MySQL
 
Geometria espacial de posição
Geometria espacial de posiçãoGeometria espacial de posição
Geometria espacial de posição
 
Seminário sobre Grafos por Samyra Lara
Seminário sobre Grafos por Samyra LaraSeminário sobre Grafos por Samyra Lara
Seminário sobre Grafos por Samyra Lara
 
Estrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas EstáticasEstrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas Estáticas
 
Banco De Dados
Banco De DadosBanco De Dados
Banco De Dados
 
Conceitos geraiss gestão de base dados
Conceitos geraiss gestão de base dadosConceitos geraiss gestão de base dados
Conceitos geraiss gestão de base dados
 
Aula de fração
Aula de fraçãoAula de fração
Aula de fração
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Análise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de GrafosAnálise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de Grafos
 
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 

Destaque

Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Leinylson Fontinele
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Leinylson Fontinele
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Leinylson Fontinele
 
Estrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó Descritor
Estrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó DescritorEstrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó Descritor
Estrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó DescritorLeinylson Fontinele
 
Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)
Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)
Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)Leinylson Fontinele
 
Estrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
Estrutura de Dados - Aula 09 - Listas Simplesmente EncadeadasEstrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
Estrutura de Dados - Aula 09 - Listas Simplesmente EncadeadasLeinylson Fontinele
 
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...Leinylson Fontinele
 
Pesquisa Operacional - Aula 07 - Problema de Transporte e Designação
Pesquisa Operacional - Aula 07 - Problema de Transporte e DesignaçãoPesquisa Operacional - Aula 07 - Problema de Transporte e Designação
Pesquisa Operacional - Aula 07 - Problema de Transporte e DesignaçãoLeinylson Fontinele
 
Estrutura de Dados - Aula 05 - Filas Estáticas
Estrutura de Dados - Aula 05 - Filas EstáticasEstrutura de Dados - Aula 05 - Filas Estáticas
Estrutura de Dados - Aula 05 - Filas EstáticasLeinylson Fontinele
 
Sistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e Laser
Sistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e LaserSistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e Laser
Sistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e LaserLeinylson Fontinele
 
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoLeinylson Fontinele
 
Estrutura de Dados - Aula 12 - Listas Duplamente Encadeadas
Estrutura de Dados  - Aula 12 - Listas Duplamente EncadeadasEstrutura de Dados  - Aula 12 - Listas Duplamente Encadeadas
Estrutura de Dados - Aula 12 - Listas Duplamente EncadeadasLeinylson Fontinele
 
Estrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas EstáticasEstrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas EstáticasLeinylson Fontinele
 
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...Leinylson Fontinele
 
Banco de Dados I - Aula 09 - Normalização de Dados
Banco de Dados I - Aula 09 - Normalização de DadosBanco de Dados I - Aula 09 - Normalização de Dados
Banco de Dados I - Aula 09 - Normalização de DadosLeinylson Fontinele
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Leinylson Fontinele
 
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)Leinylson Fontinele
 

Destaque (20)

Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
 
Estrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó Descritor
Estrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó DescritorEstrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó Descritor
Estrutura de Dados - Aula 10 - Listas Circulares e Lista com Nó Descritor
 
Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)
Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)
Estrutura de Dados - Aula 08 - Recursão (conceito, utilização, exemplos)
 
Estrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
Estrutura de Dados - Aula 09 - Listas Simplesmente EncadeadasEstrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
Estrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
 
TI na Educação
TI na EducaçãoTI na Educação
TI na Educação
 
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...Sistemas Multimídia - Aula 09 -  A TERCEIRA DIMENSÃO (Computação gráfica trid...
Sistemas Multimídia - Aula 09 - A TERCEIRA DIMENSÃO (Computação gráfica trid...
 
Pesquisa Operacional - Aula 07 - Problema de Transporte e Designação
Pesquisa Operacional - Aula 07 - Problema de Transporte e DesignaçãoPesquisa Operacional - Aula 07 - Problema de Transporte e Designação
Pesquisa Operacional - Aula 07 - Problema de Transporte e Designação
 
Estrutura de Dados - Aula 05 - Filas Estáticas
Estrutura de Dados - Aula 05 - Filas EstáticasEstrutura de Dados - Aula 05 - Filas Estáticas
Estrutura de Dados - Aula 05 - Filas Estáticas
 
Sistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e Laser
Sistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e LaserSistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e Laser
Sistemas de Telecomunicações - Aula 13 - Wi-fi, Li-fi e Laser
 
Aula Bônus
Aula BônusAula Bônus
Aula Bônus
 
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
 
Estrutura de Dados - Aula 12 - Listas Duplamente Encadeadas
Estrutura de Dados  - Aula 12 - Listas Duplamente EncadeadasEstrutura de Dados  - Aula 12 - Listas Duplamente Encadeadas
Estrutura de Dados - Aula 12 - Listas Duplamente Encadeadas
 
Estrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas EstáticasEstrutura de Dados - Aula 06 - Pilhas Estáticas
Estrutura de Dados - Aula 06 - Pilhas Estáticas
 
Grafos
GrafosGrafos
Grafos
 
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
Sistemas Multimídia - Aula 06 - Autoria (Ferramentas para Autoria de Títulos,...
 
Banco de Dados I - Aula 09 - Normalização de Dados
Banco de Dados I - Aula 09 - Normalização de DadosBanco de Dados I - Aula 09 - Normalização de Dados
Banco de Dados I - Aula 09 - Normalização de Dados
 
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
Banco de Dados I - Aula 11 - Linguagem de Consulta SQL (Comandos DDL)
 
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
 

Mais de Leinylson Fontinele

Utilização do editor de texto Word
Utilização do editor de texto WordUtilização do editor de texto Word
Utilização do editor de texto WordLeinylson Fontinele
 
Aula 05 - Importância do teste, auditoria e monitoramento
Aula 05 - Importância do teste, auditoria e monitoramentoAula 05 - Importância do teste, auditoria e monitoramento
Aula 05 - Importância do teste, auditoria e monitoramentoLeinylson Fontinele
 
Aula 04 - Implementação efetiva da política de segurança
Aula 04 - Implementação efetiva da política de segurançaAula 04 - Implementação efetiva da política de segurança
Aula 04 - Implementação efetiva da política de segurançaLeinylson Fontinele
 
Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...
Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...
Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...Leinylson Fontinele
 
Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...
Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...
Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...Leinylson Fontinele
 
Aula 01 - Fundamentos da segurança dos sistemas de informações
Aula 01 - Fundamentos da segurança dos sistemas de informaçõesAula 01 - Fundamentos da segurança dos sistemas de informações
Aula 01 - Fundamentos da segurança dos sistemas de informaçõesLeinylson Fontinele
 
A história da Segurança da Informação
A história da Segurança da InformaçãoA história da Segurança da Informação
A história da Segurança da InformaçãoLeinylson Fontinele
 
Introdução ao Prolog - Prof. Sérgio S. Costa
Introdução ao Prolog - Prof. Sérgio S. CostaIntrodução ao Prolog - Prof. Sérgio S. Costa
Introdução ao Prolog - Prof. Sérgio S. CostaLeinylson Fontinele
 
Aula 02 - Agentes e problemas de busca
Aula 02 - Agentes e problemas de buscaAula 02 - Agentes e problemas de busca
Aula 02 - Agentes e problemas de buscaLeinylson Fontinele
 

Mais de Leinylson Fontinele (20)

Utilização do editor de texto Word
Utilização do editor de texto WordUtilização do editor de texto Word
Utilização do editor de texto Word
 
Prática com slide.pptx
Prática com slide.pptxPrática com slide.pptx
Prática com slide.pptx
 
A galinha carijó
A galinha carijóA galinha carijó
A galinha carijó
 
Descrição do Projeto 8 puzzle
Descrição do Projeto 8 puzzleDescrição do Projeto 8 puzzle
Descrição do Projeto 8 puzzle
 
Aula 05 - Importância do teste, auditoria e monitoramento
Aula 05 - Importância do teste, auditoria e monitoramentoAula 05 - Importância do teste, auditoria e monitoramento
Aula 05 - Importância do teste, auditoria e monitoramento
 
Aula 04 - Implementação efetiva da política de segurança
Aula 04 - Implementação efetiva da política de segurançaAula 04 - Implementação efetiva da política de segurança
Aula 04 - Implementação efetiva da política de segurança
 
Aula 02 - Agentes Inteligentes
Aula 02 - Agentes InteligentesAula 02 - Agentes Inteligentes
Aula 02 - Agentes Inteligentes
 
Aula 01 - Visão Geral da IA
Aula 01 - Visão Geral da IAAula 01 - Visão Geral da IA
Aula 01 - Visão Geral da IA
 
Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...
Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...
Aula 02 - Aplicação de contramedidas de segurança para mitigar ataques malici...
 
Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...
Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...
Aula 03 - Controles de acesso apropriados para sistemas, aplicativos e acesso...
 
Aula 01 - Fundamentos da segurança dos sistemas de informações
Aula 01 - Fundamentos da segurança dos sistemas de informaçõesAula 01 - Fundamentos da segurança dos sistemas de informações
Aula 01 - Fundamentos da segurança dos sistemas de informações
 
A história da Segurança da Informação
A história da Segurança da InformaçãoA história da Segurança da Informação
A história da Segurança da Informação
 
Introdução ao Prolog - Prof. Sérgio S. Costa
Introdução ao Prolog - Prof. Sérgio S. CostaIntrodução ao Prolog - Prof. Sérgio S. Costa
Introdução ao Prolog - Prof. Sérgio S. Costa
 
Caso 1 - Boing 777
Caso 1 - Boing 777Caso 1 - Boing 777
Caso 1 - Boing 777
 
Caso 2 - Aeroporto de Denver
Caso 2 - Aeroporto de DenverCaso 2 - Aeroporto de Denver
Caso 2 - Aeroporto de Denver
 
Aula 02 - Agentes e problemas de busca
Aula 02 - Agentes e problemas de buscaAula 02 - Agentes e problemas de busca
Aula 02 - Agentes e problemas de busca
 
Aula 01 - Visão geral da IA
Aula 01 - Visão geral da IAAula 01 - Visão geral da IA
Aula 01 - Visão geral da IA
 
Aula 7 - Modelagem de Software
Aula 7 - Modelagem de SoftwareAula 7 - Modelagem de Software
Aula 7 - Modelagem de Software
 
Aula 6 - Qualidade de Software
Aula 6 - Qualidade de SoftwareAula 6 - Qualidade de Software
Aula 6 - Qualidade de Software
 
Aula 07 - Diagrama de sequencia
Aula 07 - Diagrama de sequenciaAula 07 - Diagrama de sequencia
Aula 07 - Diagrama de sequencia
 

Último

Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamentalAntônia marta Silvestre da Silva
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memorialgrecchi
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfMárcio Azevedo
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptMaiteFerreira4
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxDianaSheila2
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 

Último (20)

Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memoria
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdf
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.ppt
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptx
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 

Aula sobre grafos com exemplos e conceitos básicos

  • 1. # Pesquisa e Ordenação # Aula Apoio - Grafos Prof. Leinylson Fontinele Pereira
  • 2. 17:20 2 TEOREMA Pesquisa e Ordenação - Aula Apoio - Grafos
  • 3. 17:20 3 Um grafo conexo G é um grafo de Euler se e somente se todos os seus vértices são de grau par. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 4. 17:20 4 Grafos? Pesquisa e Ordenação - Aula Apoio - Grafos
  • 5. Grafo Não é Algo Recente 17:20  Quem se lembra das aulas de estrutura de dados?  Vetores (arrays);  Fila;  Pilha;  Árvores;  Grafos... Pesquisa e Ordenação - Aula Apoio - Grafos
  • 6. O Mundo Não Gira Apenas no Banco Relacional 17:20  Muita gente ainda está viciada nos RDBMs, quando pensa em um novo projeto, já começa imaginar a estrutura de tabelas;  Um arquiteto precisa pensar na melhor solução para cada caso e saber que o mundo da persistência não tem apenas os RDBMs. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 7. Pensar Fora da Caixa  17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 8. Ser Eficiente 17:20  Usar a tecnologia certa no momento certo vai tornar seu trabalho absurdamente eficiente! Pesquisa e Ordenação - Aula Apoio - Grafos
  • 9. Grafos? 17:20  Leonhard Euler  Inventor da teoria de grafos (1736)  Qual a possibilidade de atravessar todas as pontes da cidade sem repetir nenhuma?  Grafo Euleriano Pesquisa e Ordenação - Aula Apoio - Grafos
  • 10. Exemplo Clássico: Rede Social 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 11. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 12. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 13. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 14. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 15. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 16. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 17. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 18. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 19. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 20. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 21. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 22. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 23. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 24. Isso é um Grafo? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 25. Exemplos de Grafos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 26. Grafo Regular 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 27. Grafo Regular 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 29. Subgrafo 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 30. Grafos Estrela 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 31. Teoria dosGrafos 17:20 A teoria dos grafos é um ramo da matemática que estuda as relações entre os objetos de um determinado conjunto. Para tal são empregadas estruturas chamadas de grafos, G(V,A), onde V é um conjunto não vazio de objetos denominados vértices e A é um conjunto de pares não ordenados de V, chamado arestas. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 32. Representação de Grafos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 33. Para que usar Grafos? 17:20  Sistemas de recomendação  Catálogo de produtos  Filtragem colaborativa  Redes sociais (o clássico)  Sistemas geoespaciais  e muito mais... Pesquisa e Ordenação - Aula Apoio - Grafos
  • 34. Quais as Opções para usar Grafos? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 35. Neo4J 17:20  Persistência apenas em Grafos;  Implementação em Java;  É o banco mais popular em Grafos;  GPL;  Cypher Query Language Pesquisa e Ordenação - Aula Apoio - Grafos
  • 36. Neo4J 17:20 MATCH (keanu:Person { name:'Keanu Reeves' })- [:ACTED_IN]-(movie:Movie) RETURN movie Pesquisa e Ordenação - Aula Apoio - Grafos
  • 37. ArangoDB 17:20  Multi Modelagem:  Grafos  Documentos  Query Language poderosa (AQL);  Desenvolvido em C++  Interface REST HTTP;  FOXX → Framework que auxilia desenvolvimento web;  Drivers nativos para quase todas as linguagens;  Livre, mas possui suporte comercial. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 38. ArangoShell 17:20 arangosh> var graph_module = require("org/arangodb/general-graph"); arangosh> var graph = graph_module._create("myGraph"); arangosh> graph; [ Graph myGraph EdgeDefinitions: [ ] VertexCollections: [ ] ] arangosh> graph._addVertexCollection("shop"); arangosh> graph._addVertexCollection("customer"); arangosh> graph._addVertexCollection("pet"); arangosh> graph arangosh> var rel = graph_module._directedRelation("isCustomer", ["shop"], ["customer"]); arangosh> graph._extendEdgeDefinitions(rel); arangosh> graph; [ Graph myGraph EdgeDefinitions: [ "isCustomer: [shop] -> [customer]" ] VertexCollections: [ ] ] Pesquisa e Ordenação - Aula Apoio - Grafos
  • 39. OrientDB 17:20  Assim como ArangoDB, é multi-modelagem:  Documento  Grafos  Desenvolvido em Java;  Suporta transações ACID;  Possui linguagem semelhante a SQL;  Livre, mas possui suporte comercial também. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 40. Query Language - Exemplos 17:20 orientdb> insert into V set name = 'Jay' create record with RID #9:0 orientdb> create vertex V set name = 'Jay' create vertex with RID #9:1 orientdb> create edge Eat from (select from Person where name = 'Luca') to (select from Restaurant where name = 'Dante') Pesquisa e Ordenação - Aula Apoio - Grafos
  • 41. Definição 17:20  Como representar um conjunto de objetos e as suas relações? Pesquisa e Ordenação - Aula Apoio - Grafos Diversos tipos de aplicações necessitam disso  Um grafo é um modelo matemático que representa as relações entre objetos de um determinado conjunto.
  • 42. Definição 17:20  Grafos em computação Pesquisa e Ordenação - Aula Apoio - Grafos Forma de solucionar problemas computáveis Buscam o desenvolvimento de algoritmos mais eficientes  Qual a melhor rota da minha casa até o restaurante?  Duas pessoas tem amigos em comum?
  • 43. Definição 17:20  Um grafo G(V,A) é definido por dois conjuntos Pesquisa e Ordenação - Aula Apoio - Grafos Conjunto V de vértices (não vazio)  Itens representados em um grafo; Conjunto A de arestas  Utilizadas para conectar pares de vértices, usando um critério previamente estabelecido.
  • 45. Conceitos Básicos 17:20  Vértice é cada um dos itens representados no grafo. Pesquisa e Ordenação - Aula Apoio - Grafos  O seu significado depende da natureza do problema modelado  Pessoas, uma tarefa em um projeto, lugares em um mapa, etc.
  • 46. Conceitos Básicos 17:20  Aresta liga dois vértices Pesquisa e Ordenação - Aula Apoio - Grafos  Diz qual a relação entre eles  Dois vértices são adjacentes se existir uma aresta ligando eles.  Pessoas (parentesco entre elas ou amizade), tarefas de um projeto (pré-requisito entre as tarefas), lugares de um mapa (estradas que existem ligando os lugares), etc.
  • 47. Conceitos Básicos 17:20  Praticamente qualquer objeto pode ser representado como um grafo. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 48. Conceitos Básicos 17:20  Praticamente qualquer objeto pode ser representado como um grafo. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 49. Conceitos Básicos 17:20  As arestas podem ou não ter direção Pesquisa e Ordenação - Aula Apoio - Grafos
  • 50. Conceitos Básicos 17:20  As arestas podem ou não ter direção Pesquisa e Ordenação - Aula Apoio - Grafos
  • 51. Conceitos Básicos 17:20  Grau  Indica o número de arestas que conectam um vértice do grafo a outros vértices •número de vizinhos que aquele vértice possui no grafo  No caso dos dígrafos, temos dois tipos de grau: •graude entrada: número de arestas que chegam ao vértice; •graude saída: número de arestas que partem do vértice Pesquisa e Ordenação - Aula Apoio - Grafos
  • 52. Conceitos Básicos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 53. Conceitos Básicos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 54. Conceitos Básicos 17:20  Laço  Uma aresta é chamada de laço se seu vértice de partida é o mesmo que o de chegada Pesquisa e Ordenação - Aula Apoio - Grafos
  • 55. Conceitos Básicos 17:20  Caminho  Um caminho entre dois vértices é uma sequência de vértices onde cada vértice está conectado ao vértice seguinte por meio de uma aresta. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 56. Conceitos Básicos 17:20  Ciclo  Caminho onde o vértice inicial e o final são o mesmo vértice. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 57. Tipos de Grafos 17:20  Grafo trivial  Possui um único vértice e nenhuma aresta  Grafo simples  Grafo não direcionado, sem laços e sem arestas paralelas Pesquisa e Ordenação - Aula Apoio - Grafos
  • 58. Tipos de Grafos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 59. Tipos de Grafos 17:20  Grafo completo  Grafo simples onde cada vértice se conecta a todos os outros vértices do grafo. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 60. Tipos de Grafos 17:20  Grafo regular  Grafo onde todos os seus vértices possuem o mesmo grau Pesquisa e Ordenação - Aula Apoio - Grafos
  • 61. Tipos de Grafos 17:20  Subgrafo  Gs(Vs, As) é um subgrafo de G(V, A) se o conjunto de vértices Vs for um subconjunto de V, Vs ⊆ V, e se o conjunto de arestas As for um subconjunto de A, As ⊆ A. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 62. Tipos de Grafos 17:20  Grafo conexo e desconexo  Grafo conexo: existe um caminho ligando quaisquer dois vértices. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 63. Tipos de Grafos 17:20  Grafos isomorfos Dois grafos, G1(V1, A1) e G2(V2, A2), são ditos isomorfos se existe uma função que faça o mapeamento de vértices e arestas de modo que os dois grafos se tornem coincidentes. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 64. Tipos de Grafos 17:20  Grafos isomorfos Pesquisa e Ordenação - Aula Apoio - Grafos
  • 65. Tipos de Grafos 17:20  Grafo ponderado  É um grafo que possui pesos associados a cada uma de suas arestas. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 66. Tipos de Grafos 17:20  Grafo Euleriano  Grafo que possui um ciclo que visita todas as suas arestas apenas uma vez, iniciando e terminando no mesmo vértice. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 67. Tipos de Grafos 17:20  Grafo Semi-Euleriano  Grafo que possui um caminho aberto que visita todas as suas arestas apenas uma vez. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 68. Tipos de Grafos 17:20  Grafo Hamiltoniano  Grafo que possui um caminho que visita todos os seus vértices apenas uma vez. Pesquisa e Ordenação - Aula Apoio - Grafos
  • 69. Tipos de Representação 17:20  Como representar um grafo no computador?  Matriz de Adjacência  Lista de Adjacência  Qual a representação que deve ser utilizada?  Depende da aplicação! Pesquisa e Ordenação - Aula Apoio - Grafos
  • 70. Tipos de Representação 17:20  Matriz de adjacência  Utiliza uma matriz N x N para armazenar o grafo, onde N é o número de vértices • Alto custo computacional, O(N2 ) Uma aresta é representada por uma marca na posição (i , j) da matriz • Aresta liga o vértice i ao j Pesquisa e Ordenação - Aula Apoio - Grafos
  • 71. Tipos de Representação 17:20  Matriz de adjacência Pesquisa e Ordenação - Aula Apoio - Grafos
  • 72. Tipos de Representação 17:20  Lista de adjacência  Utiliza uma lista de vértices para descrever as relações entre os vértices. •Um grafo contendo N vértices utiliza um array de ponteiros de tamanho N para armazenar os vértices do grafo •Para cada vértice é criada uma lista de arestas, onde cada posição da lista armazena o índice do vértice a qual aquele vértice se conecta Pesquisa e Ordenação - Aula Apoio - Grafos
  • 73. Tipos de Representação 17:20  Lista de adjacência Pesquisa e Ordenação - Aula Apoio - Grafos
  • 74. Tipos de Representação 17:20  Qual representação utilizar? Lista de adjacência é mais indicada para um grafo que possui muitos vértices mas poucas arestas ligando-os. A medida que o número de arestas cresce e não havendo nenhuma outra informação associada a aresta, o uso de uma matriz de adjacência se torna mais eficiente Pesquisa e Ordenação - Aula Apoio - Grafos
  • 75. Material: https://sites.google.com/site/leinylsonuespi 17:20 Material baseado nas aulas de:  Christiano Anderson, Grafos - Uma abordagem divertida  Matemática com o Google Earth, Professor Fernando Brito  Linguagem C Descomplicada , Dr. André R. Backes Pesquisa e Ordenação - Aula Apoio - Grafos
  • 76. 17:20 76 Desafio! Pesquisa e Ordenação - Aula Apoio - Grafos
  • 77. Desafio MatematicamenteImpossível!! 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 78. Do que Trata o Desafio? 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 79. Explicaçãodo Desafio 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 80. 17:20 80 Atividade Pesquisa e Ordenação - Aula Apoio - Grafos
  • 81. 17:20 81 Konigsberg Bridges Pesquisa e Ordenação - Aula Apoio - Grafos
  • 82. Situação-problema 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Por muito tempo os moradores da cidade de Königsberg (atualmente Kaliningrado, na Rússia) perguntavam-se se era possível fazer um passeio na cidade cruzando todas as sete pontes que cortavam o rio Pregel.  Passando apenas uma vez por cada ponte, retornando ao ponto de partida, ou seja, percorrendo um caminho fechado.
  • 83. Mapa de Königsberg de 1652 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 84. Konigsberg Bridges 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Muitos tentaram fazer um percurso, mas as tentativas foram sempre falhas.  Até que o matemático suíço Leonhard Euler (1707 − 1783), usando argumentos muito simples, provou em 1736 que não era possível realizar tal feito.
  • 85. Konigsberg Bridges 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Ele usou um diagrama, chamado de grafo2, para reproduzir os principais elementos do mapa, onde desenhou pontos (vértices) representando as porções de terra e linhas (arestas) representando os percursos pelas sete pontes.
  • 86. Konigsberg Bridges 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Daí Euler percebeu que só seria possível fazer o trajeto passando uma única vez em cada ponte e retornando ao ponto de partida, se houvesse, partindo de cada vértice, um número par de arestas  Isto é, todos os vértices deveriam ser de grau par.  Assim, esse famoso problema matemático tornou-se ponto de partida para o desenvolvimento da Teoria dos Grafos.
  • 87. Konigsberg Bridges 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Da mesma forma, outras situações reais podem ser representadas por grafos como, por exemplo:  Esquemas de circuitos integrados; rotas otimizadas para empresas de transporte  sistemas de engenharia de tráfego;  Distribuição de serviços de energia, água, e telefone.  Além disso, também é possível modelar relações de hierarquia, amizade e trabalho.
  • 88. Konigsberg Bridges 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 89. Konigsberg Bridges – Várias Abstrações 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 90. Modelo do Problema 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos 𝑉 = { 𝑚 | 𝑚 é 𝑢𝑚𝑎 𝑖𝑙ℎ𝑎 𝑜𝑢 𝑢𝑚𝑎 𝑚𝑎𝑟𝑔𝑒𝑚 } 𝐴 = { (𝑚1, 𝑚2, 𝑝} | 𝑒𝑥𝑖𝑠𝑡𝑒 𝑢𝑚𝑎 𝑝𝑜𝑛𝑡𝑒 𝑝 𝑢𝑛𝑖𝑛𝑑𝑜 𝑎𝑠 𝑚𝑎𝑟𝑔𝑒𝑛𝑠/𝑖𝑙ℎ𝑎𝑠 𝑚1 𝑒 𝑚2 } 𝑉 = { 𝐴, 𝐵, 𝐶, 𝐷 } 𝐴 = { (𝐴, 𝐶, 𝑐), (𝐴, 𝐶, 𝑑), (𝐴, 𝐵, 𝑎), (𝐴, 𝐵, 𝑏), (𝐴, 𝐷, 𝑒), (𝐵, 𝐷, 𝑓), (𝐶, 𝐷, 𝑔) }
  • 91. Kaliningrado - Federação Russa (Atualmente) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 92. Konigsberg Bridges (Atualmente) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 93. Relaçãodo DesafiocomKonigsberg Bridges 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 94. Teoria dos Grafos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Um Caminho Euleriano é um caminho em um grafo que visita cada aresta apenas uma vez.  Com caso especial, um Circuito Euleriano é um caminho Euleriano que começa e termina no mesmo vértice.
  • 95. Grafo de Königsberg 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 96. Teoria dos Grafos 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Pela análise do grafo modelo G para o problema das pontes de Königsberg, observa-se que Para Todo v E V, gr(v) é ímpar. Logo, o grafo G não é um grafo de Euler.  Isso significa que o problema não possui solução. Note que não é necessário que tenhamos Para Todo v E V, gr(v) é impar , basta que Exista Pelo Menos Um v E V | gr(v) é impar para concluirmos que o grafo em questão não é um grafo de Euler.
  • 97. Grafo Euleriano 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 98. Caminho Hamiltoniano 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos Um caminho hamiltoniano é um caminho que permite passar por todos os vértices de um grafo G, não repetindo nenhum, ou, seja, passar por todos uma e uma só vez por cada.
  • 99. Caminho Hamiltoniano 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 100. Matriz de Adjacência 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Uma matriz de adjacência é uma das formas de se representar um grafo.  Dado um grafo G com n vértices, podemos representá-lo em uma matriz 𝑛 𝑥 𝑛 𝐴(𝐺) = [𝑎𝑖𝑗] (ou simplesmente 𝐴).
  • 101. Listade Adjacência 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 102. Problema do Caixeiro-Viajante – (PCV) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  É um problema que tenta determinar a menor rota para percorrer uma série de cidades (visitando uma única vez cada uma delas), retornando à cidade de origem.  Trata-se de um problema de otimização inspirado na necessidade dos vendedores em realizar entregas em diversos locais (as cidades) percorrendo o menor caminho possível, reduzindo o tempo necessário para a viagem e os possíveis custos com transporte e combustível.
  • 103. Problema do Caixeiro-Viajante – (PCV) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 104. AlgoritmoACO (Ant Colony Optimization) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  Nos algoritmos ACO, as formigas são simples agentes que, no caso do PCV, constroem circuitos através do movimento entre cidades no grafo do problema.  A solução construída pelas formigas é elaborada por trilhos de feromonas (artificiais) e pela disponibilidade de informação heurística, à priori.  Quando o algoritmo ACO é aplicado, é associada uma força da feromona, onde 𝜏𝑖𝑗(𝑡) é uma informação numérica que é modificada durante o algoritmo, e t é o contador das iterações
  • 105. AlgoritmoACO (Ant Colony Optimization) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 106. AlgoritmoACO (Ant Colony Optimization) 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 107. Teorema das QuatroCores 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 108. Teorema das QuatroCores 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 109. Teorema das QuatroCores 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 110. 17:20 110 Agora é sua vez! Pesquisa e Ordenação - Aula Apoio - Grafos
  • 111. Atividade como Google Maps 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos  As Sete Pontes de Königsberb  Construa o grafo no quadro (indicando as coordenadas) e determine um percurso optimizado do trecho descrito a seguir:  Partindo da sua residência, trace o menor percurso para chegar à Faculdade Maurício de NASSAU. Seu trajeto deve incluir uma visita à Catedral de N. S. das Graças, Rodoviária de Municipal e Parnaíba Shopping, retornando à sua residência, sem repetir nenhuma rua ou ponte, não necessariamente nesta ordem.
  • 112. Atividade como Google Maps 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 113. Atividade como Google Maps 17:20 Pesquisa e Ordenação - Aula Apoio - Grafos
  • 114. Alguma Dúvida? 17:20 Até a prova! leinylson@gmail.com
  • 115. Prática  17:20 115 As aulas práticas foram baseadas no material de Linguagem C Descomplicada , Dr. André R. Backes. Disponível em: https://programacaodescomplicada.wordpress.com/ Estrutura de Dados - Aula Apoio - Grafos
  • 116. ListaEstática Sequencial 17:20  ListaSequencial.h  Os protótipos das funções  O tipo de dado armazenado na lista  O ponteiro lista  Tamanho do vetor usado na lista Estrutura de Dados - Aula Apoio - Grafos
  • 117. ListaEstática Sequencial 17:20  ListaSequencial.c  O tipo de dados lista  Implementar as suas funções Estrutura de Dados - Aula Apoio - Grafos
  • 118. 17:20 118 Definindo o Grafo Estrutura de Dados - Aula Apoio - Grafos
  • 119. Definindoo Grafo: TADGrafo 17:20 Estrutura de Dados - Aula Apoio - Grafos
  • 120. 17:20 120 Criando o Grafo Estrutura de Dados - Aula Apoio - Grafos
  • 121. Criandoo Grafo 17:20 Estrutura de Dados - Aula Apoio - Grafos
  • 122. Criandoo Grafo 17:20 Estrutura de Dados - Aula Apoio - Grafos
  • 123. 17:20 123 Destruindo o Grafo Estrutura de Dados - Aula Apoio - Grafos
  • 124. Destruindoo Grafo 17:20 Estrutura de Dados - Aula Apoio - Grafos
  • 125. Destruindoo Grafo 17:20 Estrutura de Dados - Aula Apoio - Grafos
  • 126. 17:20 126 Inserindo uma Aresta no Grafo Estrutura de Dados - Aula Apoio - Grafos
  • 127. Inserindo uma Aresta no Grafo 17:20 Estrutura de Dados - Aula Apoio - Grafos
  • 128. Inserindo uma Aresta no Grafo 17:20 Estrutura de Dados - Aula Apoio - Grafos