Algoritmos em Grafos
|
|
|
- Ângela Farinha Brás
- 8 Há anos
- Visualizações:
Transcrição
1 Algoritmos em Grafos Baseado em: The Algorithm Design Manual Steven S. Skiena IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 1/42
2 Introdução (1) Um grafo G=(V,E) consiste em um conjunto V de vértices e um conjunto E de pares de vértices ou arestas. Os grafos são uma forma de modelar os problemas. Muitos problemas algorítmicos são simplificados ao pensarmos neles em termos de grafos. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 2/42
3 Introdução (2) A teoria dos Grafos fornece uma linguagem para tratarmos com as propriedades dos grafos. Conhecer diferentes problemas algorítmicos em grafos é melhor do que entender os detalhes de algoritmos particulares em grafos. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 3/42
4 Conteúdo Estruturas de dados básicas e operações de atravessamento. Algoritmos mais sofisticados para: caminhos mais curtos e árvore geradora. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 4/42
5 Observações Grafos podem ser utilizados para modelar uma variedade de estruturas e relações. Muitas aplicações de grafos podem ser reduzidas a propriedades padrão de grafos e usando algoritmos bem conhecidos. Busca em profundidade e busca em largura fornecem mecanismos para visitar cada aresta e cada vértice do grafo. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 5/42
6 Matriz de adjacências Espaço: O(n²) Espaço pode ser reduzido agrupandose as informações em bits ou armazenando apenas a matriz triangular. Tempo constante para testar a pertinência de uma aresta ao grafo. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 6/42
7 Listas de adjacências Tempo O(di ) para verificar a pertinência de uma aresta ao grafo, onde d i é o grau do vértice i. Pior caso quando di =Θ(n). Na prática os grafos geralmente são esparsos. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 7/42
8 Lista de adjacências Para muitas aplicações é a melhor alternativa. A utilização de lista ligada facilita a ampliação da estrutura. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 8/42
9 Matriz de Adjacências X Listas de Adjacências Testar se aresta está no grafo. Determinar o grau de um vértice. Menos memória em grafos pequenos. Menos memória em grafos grandes. Inserção ou remoção de aresta. Atravessar o grafo. Melhor na maioria dos problemas. Matriz de Adjacência Listas de Adjacências Listas de Adjacências Matriz de Adjacência Matriz de Adjacência Listas de Adjacências????????? IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 9/42
10 Atravessando Grafos Impressão ou validação de cada vértice e/ou aresta. Cópia de um grafo ou conversão entre representações diferentes. Contagem de números de vértices e/ou arestas. Determinação de componentes conexas. Determinação de caminho entre dois vértices ou ciclos, caso existam. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 10/42
11 Atravessando Grafos Eficiência um mesmo local não deve ser visitado repetidamente. Corretude o percurso deve ser feito de modo que não se perca nada. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 11/42
12 Atravessando Grafos Os vértices devem ser marcados quando visitados pela primeira vez. Cada vértice deve ter um dos estados: Não-visitado Visitado Completamente explorado IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 12/42
13 Atravessando Grafos Mantém-se uma estrutura de dados com todos os vértices já visitados mas ainda não completamente explorados. As arestas não-orientadas são consideradas duas vezes. As orientadas apenas uma. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 13/42
14 Atravessando Grafos Estruturas dados para armazenar os vértices descobertos mas ainda não completamente explorados: Fila busca em largura Pilha busca em profundidade IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 14/42
15 Busca em Largura A árvore define um caminho mais curto da raiz até cada um dos vértices. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 15/42
16 Busca em Profundidade Geralmente é mais útil do que a busca em largura. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 16/42 5
17 Aplicações da Travessia Componentes Conexas Detecção de Árvores e Ciclos 2-coloração de Grafos Ordenação Topológica Vértices de Articulação IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 17/42
18 Componentes Conexas Pode-se usar Busca em Largura ou Busca em Profundidade. Em grafos orientados temos os conceitos de fracamente conexo e fortemente conexo. Tempo: O(m+n) IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 18/42
19 Detecção de Árvores e Ciclos Detecção de árvores é feita usando busca em profundidade o grafo é uma árvore se, e somente se, não existirem arestas de retorno. A detecção de ciclo é feita quando a primeira aresta de retorno é identificada. Tempo: O(n) IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 19/42
20 2-coloração de Grafos Pode-se usar busca em largura ou em profundidade. Um vértice visitado recebe sempre cor diferente da de seu pai. Para cada aresta não visitada verificase se ela não une dois vértices de mesma cor. Neste caso, foi possível uma 2-coloração. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 20/42
21 Ordenação Topológica Consideremos grafos dirigidos acíclicos. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 21/42
22 Ordenação Topológica É uma ordenação nos vértices de forma que todas as arestas vão da esquerda para a direita. Busca em profundidade é utilizada para determinar se o grafo orientado é acíclico e então determinar uma ordenação topológica. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 22/42
23 Ordenação Topológica Um grafo orientado é acíclico se, e somente se, não são encontradas arestas de retorno durante uma busca em profundidade. Cada vértice é rotulado em ordem inversa à ordem em que eles são marcados completamente explorados. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 23/42
24 Vértices de Articulação (1) É um vértice de um grafo conexo cuja remoção torna o grafo desconexo. Qualquer grafo que contenha um vértice de articulação é frágil. A conectividade de um grafo é a quantidade de vértices necessários para desconectar o grafo. Conectividade é uma importante medida de robustez no projeto de rede. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 24/42
25 Vértice de Articulação (2) IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 25/42
26 Modelagem de Problemas (1) Procura-se um algoritmo para o projeto de rotas naturais para personagens de jogos de vídeo game através de uma sala cheia de objetos. Como fazer? IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 26/42
27 Como proceder? Uma grade onde cada vértice é um lugar válido e uma aresta ligando vértices vizinhos, com pesos dependendo da distância entre os vértices. Determinar o caminho mais curto. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 27/42
28 Modelagem de Problemas (2) No sequenciamento de DNA, os dados experimentais consistem de pequenos fragmentos. Para cada fragmento f, existem fragmentos que são forçados a estar à esquerda de f, outros à direita e outros que podem ir para qualquer um dos lados. Como podemos determinar uma ordenação consistente dos fragmentos da esquerda para a direita que satisfaça todas as restrições? IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 28/42
29 Como proceder? Criar um grafo dirigido no qual a cada vértice é atribuído um fragmento. Uma aresta (l,f) liga um fragmento l que é obrigado a estar à esquerda. Uma aresta (f,r) liga um fragmento r que é obrigado a estar à direita. Determinar uma ordenação topológica neste grafo. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 29/42
30 Modelagem de Problemas (3) Dado um conjunto qualquer de retângulos no plano, como distribuí-los em um número mínimo de cestos tal que o subconjunto de retângulos em um mesmo cesto não intersectam-se entre si? IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 30/42
31 Como proceder? Cada vértice representa um retângulo. Uma aresta liga vértices cujos retângulos se intersectam. Cada cesto corresponde a um conjunto independente. A coloração de vértices particiona um grafo em conjuntos independentes, logo nosso problema é determinar uma coloração mínima de vértices. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 31/42
32 Modelagem de Problemas (4) Ao portar códigos de UNIX para DOS, tem-se que reduzir o tamanho dos nomes de várias centenas de arquivos para no máximo 8 caracteres cada. Como diminuir o nome dos arquivos e garantir que não haja conflito? IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 32/42
33 Como proceder? Construir um grafo com vértices correspondendo ao nome original ligados a vértices que possam corresponder a reduções do nome. Determinar um conjunto de n arestas que não tenham vértices em comum. Determinar um conjunto independente de arestas em um grafo bipartido. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 33/42
34 Árvore Geradora Mínima Uma árvore é uma grafo sem ciclos. Um árvore geradora é um subgrafo de G com os mesmo vértices que é uma árvore. Um árvore geradora mínima de um grafo com pesos é a árvore geradora de peso mínimo. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 34/42
35 Observações Úteis em determinar a menor quantidade de fios necessárias para interligar um grupo de casas ou cidades. Pode existir mais de uma tal árvore. Para o caso em que todas as arestas têm o mesmo peso, todas as árvores geradoras são mínimas. Para o caso geral, o problema não é tão simples. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 35/42
36 Algoritmo de Prim Escolha um vértice arbitrário s enquanto existe algum vértice fora da árvore faça tome a aresta de menor peso entre a árvore e um vértice não pertencente à árvore adicione a aresta selecionada e o vértice à árvore T IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 36/42
37 Exemplo IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 37/42
38 O(nm) Tempo Pode ser reduzido a O(n²). IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 38/42
39 Algoritmo de Kruskal Mantenha as arestas em uma fila de prioridade ordenada pelo peso Conta <- 0 enquanto (Conta < n-1) faça tome o próxima aresta (v,w) se componente(v)!= componente(w) insira (v,w) em T junte as componentes IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 39/42
40 Exemplo IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 40/42
41 O(nm) Tempo Pode ser melhorado para O(m log m). IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 41/42
42 Agradecimentos Estes slides são baseados no livro The Algorithm Design Manual, de Steven S. Skiena. Qualquer incorretude é, entretanto, de inteira responsabilidade do prof. João Alberto Fabro, da UTFPR. IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 42/42
Grafos: algoritmos de busca
busca em grafos como caminhar no grafo de modo a percorrer todos os seus vértices evitando repetições desnecessárias do mesmo vértice? e por onde começar? solução: necessidade de recursos adicionais que
Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko. Capítulo 3
Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko Capítulo 3 Árvores Problema: Suponha que numa cidade haja n postos telefônicos. Para que seja sempre possível haver comunicação
Matemática Discreta 10
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta 10 Prof. Jorge Cavalcanti [email protected] - www.univasf.edu.br/~jorge.cavalcanti 1 Muitas
Algoritmos 2 - Introdução
DAINF - Departamento de Informática Algoritmos 2 - Introdução Prof. Alex Kutzke (http://alex.kutzke.com.br/courses) 19 de Agosto de 2015 Slides adaptados do material produzido pelo Prof. Rodrigo Minetto
Teoria dos Grafos. Edson Prestes
Edson Prestes Grafos Enumeração de Passeios/Caminhos O processo associado à enumeração de caminhos de um grafo/dígrafo é semelhante ao processo de contagem com a diferença de que usaremos uma matriz de
Aula 10: Tratabilidade
Teoria da Computação DAINF-UTFPR Aula 10: Tratabilidade Prof. Ricardo Dutra da Silva Na aula anterior discutimos problemas que podem e que não podem ser computados. Nesta aula vamos considerar apenas problemas
INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos. RESOLUÇÃO DO 2 o TESTE
INSTITUTO SUPERIOR TÉCNICO Análise e Síntese de Algoritmos Ano Lectivo de 2006/2007 2 o Semestre RESOLUÇÃO DO 2 o TESTE I. (2,0+2,0+2,0 = 6,0 val.) 1) Calcule o valor óptimo da função objectivo e o respectivo
Grafos: caminhos mínimos
quando o grafo é sem pesos, a determinação de um caminho mais curto pode ser feita através de uma busca em largura caminho mais curto é aquele que apresenta o menor número de arestas quando o grafo tem
Árvores UFES. Teoria dos Grafos. CC/EC/Mestrado
Árvores Árvores Grafo Acíclico: não possui ciclos Árvores Grafo Acíclico: não possui ciclos Uma árvore é um grafo conexo acíclico Árvores Grafo Acíclico: não possui ciclos Uma árvore é um grafo conexo
CONCEITOS BÁSICOS EM GRAFOS
Um grafo (simples) G é formado por um conjunto de vértices, denotado por V(G), e um conjunto de arestas, denotado por E(G). Cada aresta é um par (não ordenado) de vértices distintos. Se xy é uma aresta,
Teoria dos Grafos. Edson Prestes
Edson Prestes Árvores Algoritmo de Kruskal O algoritmo de Kruskal permite determinar a spanning tree de custo mínimo. Este custo corresponde à soma dos pesos (distância, tempo, qualidade,...) associados
Grafos Planares. Grafos e Algoritmos Computacionais. Prof. Flávio Humberto Cabral Nunes
Grafos Planares Grafos e Algoritmos Computacionais Prof. Flávio Humberto Cabral Nunes [email protected] 1 Introdução Os exemplos mais naturais de grafos são os que se referem à representação de mapas
Grafos: caminhos (matriz adjacência)
Grafos: caminhos (matriz adjacência) Algoritmos e Estruturas de Dados 2 Graça Nunes 1 O problema do menor caminho Um motorista deseja encontrar o caminho mais curto possível entre duas cidades do Brasil
Optimização em Redes e Não Linear
Departamento de Matemática da Universidade de Aveiro Optimização em Redes e Não Linear Ano Lectivo 005/006, o semestre Folha - Optimização em Redes - Árvores de Suporte. Suponha que uma dada companhia
ANÁLISE COMBINATÓRIA
Nome Nota ANÁLISE COMBINATÓRIA 1) De quantas maneiras diferentes 11 homens e 8 mulheres podem se sentar em uma fila se os homens sentam juntos e as mulheres também? 2!*11!*8! 2) O controle de qualidade
Problema do Caminho Mais Curto. Problema do Caminho Mais Curto
Problema do Caminho Mais Curto " Podemos afectar pesos" aos arcos de um grafo, por exemplo, para representar uma distância entre cidades numa rede ferroviária: ria: Chicago 650 600 700 Toronto 200 New
Aprendendo a Programar Programando numa Linguagem Algorítmica Executável (ILA)
Jaime Evaristo Sérgio Crespo Aprendendo a Programar Programando numa Linguagem Algorítmica Executável (ILA) Segunda Edição Capítulo 7 Versão 13052010 7. Pesquisa e Ordenação 7.1 Introdução Embora os problemas
Definição e Conceitos Básicos
Definição e Conceitos Básicos Grafos e Algoritmos Computacionais Prof. Flávio Humberto Cabral Nunes [email protected] 1 Conceitos Básicos Em grafos ocorrem dois tipos de elementos: Vértices ou nós;
A Cidade Enlameada Árvores Geradoras Mínimas
Atividade 9 A Cidade Enlameada Árvores Geradoras Mínimas Sumário Nossa sociedade é conectada por muitas redes: redes telefônicas, redes de abastecimento, redes de computadores e redes rodoviárias. Para
APLICAÇÕES DE BUSCA EM GRAFOS
APLICAÇÕES DE BUSCA EM GRAFOS David Krenkel Rodrigues de Melo [email protected] Prof. Leonardo Sommariva, Estrutura de Dados RESUMO: São inúmeras as aplicaçõe de grafos, bem como os problemas clássicos
Introdução à Teoria dos Grafos
Capítulo 1 Introdução à Teoria dos Grafos 1.1 História O primeiro problema cuja solução envolveu conceitos do que viria a ser teoria dos grafos, denominado "problema das pontes de Königsberg", foi resolvido
Estruturas de Dados Pilhas, Filas, Listas
PMR2300 Escola Politécnica da Universidade de São Paulo Introdução Estruturas de dados são objetos que armazenam dados de forma eficiente, oferecendo certos serviços para o usuário (ordenação eficiente
Variáveis, Tipos de Dados e Operadores
! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: [email protected]) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória
Teoria dos Grafos Introdu c ao
Teoria dos Grafos Introdução Referências P. O. Boaventura Netto, Grafos: Teoria, Modelos e Algoritmos, São Paulo, E. Blucher 001; R. J. Trudeau, Introduction to Graph Theory, New York, Dover Publications,
Árvores. ! utilizada em muitas aplicações. ! modela uma hierarquia entre elementos. ! O conceito de árvores está diretamente ligado à recursão
Árvores 1 Árvores! utilizada em muitas aplicações! modela uma hierarquia entre elementos! árvore genealógica! diagrama hierárquico de uma organização! modelagem de algoritmos! O conceito de árvores está
Matrizes esparsas: definição
Matrizes esparsas: definição o objetivo é mostrar os métodos de armazenamento e manipulação de matrizes esparsas esparsidade de uma matriz é a relação entre o número de elementos nulos de uma matriz e
4 Casamento de Padrões
4 Casamento de Padrões O casamento de padrões é uma técnica que tem por objetivo localizar os elementos constituintes de uma seqüência em um conjunto de outras seqüências. Chamemos de padrão a seqüência
OBI2012 Caderno de soluções
OBI2012 Caderno de soluções Modalidade Programação Nível 2, Fase 2 12 de maio de 2012 Promoção: Patrocínio: Olimpíada Brasileira de Informática OBI2012 1 Álbum de fotos Dado um retângulo X Y e dois retângulos
Grafos Msc. Daniele Carvalho Oliveira. Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1
Grafos Msc. Daniele Carvalho Oliveira Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1 Árvore Geradora Mínima 2 Porque é um problema interessante Suponha que queremos
Análise Sintática II. Eduardo Ferreira dos Santos. Outubro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 34
Análise Sintática II Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Outubro, 2016 1 / 34 Sumário 1 Introdução 2 Ambiguidade 3 Análise sintática descendente 4
Curso de Formação de Oficiais Conhecimentos Específicos ENGENHARIA DE COMPUTAÇÃO CADERNO DE QUESTÕES
Curso de Formação de Oficiais Conhecimentos Específicos ENGENHARIA DE COMPUTAÇÃO CADERNO DE QUESTÕES 2014 1 a QUESTÃO Valor: 1,00 a) (0,30) Defina gramáticas livre de contexto. b) (0,30) Crie uma gramática
Introdução à Programação
Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira
Análise de Ponto de Função APF. Aula 03
Análise de Ponto de Função APF Aula 03 Parte 01 Introdução a Métricas de Software Parte 02 A Técnica de APF Identificação das Funções de Dados Diretrizes Gerais Tipos de Entidades Arquivos Lógicos Tipo
Eduardo Camponogara. DAS-9003: Introdução a Algoritmos
Caminhos Mínimos entre Todos os Vértices 1/ 48 Caminhos Mínimos entre Todos os Vértices Eduardo Camponogara Departamento de Automação e Sistemas Universidade Federal de Santa Catarina DAS-9003: Introdução
Lista de Figuras Figura 1 1: Figura 1 2: Figura 1 3: Figura 1 4: Figura 1 5: Figura 1 6: Figura 1 7: Figura 1 8: Figura 1 9: Figura 1 10:
Lista de Figuras Figura 1 1: Módulo de Memória DRAM 26 Figura 1 2: Um Disco Magnético com Três Pratos e Seis Superfícies 28 Figura 1 3: Geometria de uma Superfície de Disco Magnético 29 Figura 1 4: Um
MODELO DE BANCO DE DADOS RELACIONAL
UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ CIÊNCIA DA COMPUTAÇÃO BANCO DE DADOS I MODELO DE BANCO DE DADOS RELACIONAL Profº Erinaldo Sanches Nascimento Objetivos Descrever os princípios básicos
Árvore Binária de Busca Ótima
MAC 5710 - Estruturas de Dados - 2008 Referência bibliográfica Os slides sobre este assunto são parcialmente baseados nas seções sobre árvore binária de busca ótima do capítulo 4 do livro N. Wirth. Algorithms
IFRN. Conexidade e Distância. Prof. Edmilson Campos
IFRN Conexidade e Distância Prof. Edmilson Campos Conteúdo Grafo Conexo Componente Conexa e Algoritmos Grafo F-Conexo Componente F-Conexa Antecessor, Sucessor, Fecho Transitivo Algoritmo Grafo Reduzido
Aula 13 Roteamento Dinâmico com Protocolos Link-State (Protocolo OSPF)
Disciplina: Dispositivos de Rede I Professor: Jéferson Mendonça de Limas 3º Semestre Aula 13 Roteamento Dinâmico com Protocolos Link-State (Protocolo OSPF) 2014/1 Roteiro de Aula Introdução Funcionamento
Fluxo Máximo. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Fluxo Máximo 2014/ / 28
Fluxo Máximo Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Fluxo Máximo 2014/2015 1 / 28 Fluxo Máximo Um grafo pesado pode ser interpretado como uma rede de canalizações onde o peso é a capacidade
FACULDADE PITÁGORAS PRONATEC
FACULDADE PITÁGORAS PRONATEC DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos [email protected] www.oficinadapesquisa.com.br Objetivos Ao final desta apostila,
UNIP Ciência da Computação AES Análise Essencial de Sistemas MER (Modelo Entidade Relacionamento)
MER (Modelo Entidade Relacionamento) O Modelo Entidade Relacionamento é uma ferramenta para modelagem de dados, utilizada durante a modelagem do projeto conceitual de banco de dados. A utilização do MER
Árvore Vermelho-Preta. Estrutura de Dados II Jairo Francisco de Souza
Árvore Vermelho-Preta Estrutura de Dados II Jairo Francisco de Souza Introdução As árvores Vermelho-preto são árvores binárias de busca Também conhecidas como Rubro-negras ou Red-Black Trees Foram inventadas
TEORIA DOS GRAFOS NA TOMADA DE DECISÃO
TEORIA DOS GRAFOS NA TOMADA DE DECISÃO Guilherme Yuji FUKUMOTO 1 Paula PILOTO LANGHI 2 RESUMO: Introduzindo uma ferramenta muito utilizada na computação e ainda pouco explorada na administração, este artigo
Árvores B. Prof. Flávio Humberto Cabral Nunes
Árvores B Prof. Flávio Humberto Cabral Nunes Conteúdo 1. Introdução 2. Busca 3. Inserção 4. Remoção 5. B* 6. B+ Capítulo: 8 (APOSTILA). Introdução Em muitas aplicações, a tabela considerada é muito grande
XIX Semana Olímpica de Matemática. Nível 2. Grafos. Matheus Secco
XIX Semana Olímpica de Matemática Nível 2 Grafos Matheus Secco O projeto da XIX Semana Olímpica de Matemática foi patrocinado por: Grafos N2 Professor Matheus Secco 1 Contagens úteis Teorema 1 arestas,
Pesquisa Operacional
Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 3 - Teoria dos Grafos Fernando Marins [email protected] Departamento de Produção
PESQUISA OPERACIONAL APLICADA A LOGÍSTICA
PESQUISA OPERACIONAL APLICADA A LOGÍSTICA Pós-Graduação em Logística e Supply Chain Valdick Sales 1 APRESENTAÇÃO Valdick sales Graduado em Ciência da Computação pela UFPE. Pós-Graduado em Redes e Banco
Plano Curricular de Matemática 5ºAno - 2º Ciclo
Plano Curricular de Matemática 5ºAno - 2º Ciclo Domínio Conteúdos Metas Nº de Tempos Previstos Numeros e Operações Números racionais não negativos (Educação Financeira) - Cidadania - Simplificação de frações;
O uso da Teoria dos Grafos no Jogo Icosiano
O uso da Teoria dos Grafos no Jogo Icosiano Leandro Natal Coral 1, Rafael Spilere Marangoni 1, Kristian Madeira 2 1 Acadêmico do curso de Ciência da Computação Unidade Acadêmica de Ciências, Engenharias
Algoritmos geométricos
Algoritmos geométricos introdução a conceitos básicos de geometria computacional que serão abordados de forma mais avançada na disciplina Computação Gráfica disciplina de computação gráfica arquitetura
FACULDADE CAMPO LIMPO PAULISTA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto a Análise de Algoritmos I Lista de Exercícios 1
FACULDADE CAMPO LIMPO PAULISTA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Projeto a Análise de Algoritmos I Lista de Exercícios 1 Prof. Osvaldo. 1. Descreva alguns problemas associados ao emprego de metodologias
Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá
Grafos Hamiltonianos e o Problema do Caixeiro Viajante Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá Grafo Hamiltoniano Definição: Um circuito hamiltoniano em um
PLANO DE ESTUDOS DE MATEMÁTICA - 5.º ANO PERFIL DO ALUNO
DE MATEMÁTICA - 5.º ANO Ano Letivo 2014 2015 PERFIL DO ALUNO No domínio dos Números e Operações, o aluno deve ser capaz de conhecer e aplicar propriedades dos divisores e efetuar operações com números
Aplicação do algoritmo de Dijkstra para o problema de roteamento da frota de táxis partindo de um ponto fixo
Aplicação do algoritmo de Dijkstra para o problema de roteamento da frota de táxis partindo de um ponto fixo Heverton Ramos dos Santos 1 Alamir Rodrigues Rangel Jr 2 O presente artigo visa demonstrar uma
BCC204 - Teoria dos Grafos
BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal
S12 - Software e Engenharia de Software
S12 - Software e Engenharia de Software ENGENHARIA DE SOFTWARE PRESSMAN, 2011 Gilberto Wolff UTFPR Introdução Introdução Introdução Introdução Busquem respostas para: 1. Há diferença entre Software e Programa?
Inteligência Artificial. Conceitos Gerais
Inteligência Artificial Conceitos Gerais Inteligência Artificial - IA IA é um campo de estudo multidisciplinar e interdisciplinar, que se apóia no conhecimento e evolução de outras áreas do conhecimento.
BC1424 Algoritmos e Estruturas de Dados I Aula 05 Custos de um algoritmo e funções de complexidade
BC1424 Algoritmos e Estruturas de Dados I Aula 05 Custos de um algoritmo e funções de complexidade Prof. Jesús P. Mena-Chalco 1Q-2016 1 1995 2015 2 Custo de um algoritmo e funções de complexidade Introdução
Normalização de Dados. Disciplina: Fundamentos de Banco de dados Docente: Kelyn Schenatto
Normalização de Dados Disciplina: Fundamentos de Banco de dados Docente: Kelyn Schenatto História... Muitos dos sistemas de informação ainda utilizados atualmente foram desenvolvidos ao longo dos últimos
Redes de Computadores
Redes de Computadores Prof. Marcelo Gonçalves Rubinstein Programa de Pós-Graduação em Engenharia Eletrônica Faculdade de Engenharia Universidade do Estado do Rio de Janeiro Ementa Introdução a Redes de
Teoria dos Grafos Aula 27
Teoria dos Grafos Aula 27 Aula passada Aula de hoje Algoritmo de Ford Aplicações do fluxo Fulkerson máximo Análise do algoritmo Emparelhamento perfeito Melhorando algoritmo inicial Caminhos distintos Corte
Trabalho: Algoritmos de Busca e Ordenação. 1 Introdução. Prof. Bruno Emerson Gurgel Gomes IFRN - Câmpus Currais Novos. 31 de outubro de 2012
Trabalho: Algoritmos de Busca e Ordenação Prof. Bruno Emerson Gurgel Gomes IFRN - Câmpus Currais Novos 31 de outubro de 2012 1 Introdução Os algoritmos de busca e de ordenação compreendem um conjunto de
FLUXO DE VEÍCULOS. Prof. Dr. Renato da Silva Lima (35) Fluxo de Veículos
www.rslima.unifei.edu.br [email protected] (35) 3629-1296 FLUXO DE VEÍCULOS Introdução Diagrama Espaço x Tempo Comportamento de uma corrente de tráfego Princípios Fundamentais do Relação Fundamental
Determinação de medidas de posição a partir de dados agrupados
Determinação de medidas de posição a partir de dados agrupados Rinaldo Artes Em algumas situações, o acesso aos microdados de uma pesquisa é restrito ou tecnicamente difícil. Em seu lugar, são divulgados
Solucionador de circuitos lógicos em C++
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE ENGENHARIA DE COMPUTAÇÃO E AUTOMAÇÃO DCA Solucionador de circuitos lógicos em C++ Camila de Oliveira Silva, 2009028716 Victor Neves Nogueira,
Sistemas de Numeração
Computação e Processamento de Dados CPD INF400 Professor: André Ferreira [email protected] Material baseado: Prof.ª Renata Vilas e outros Sistemas de Numeração Observações Gerais Definição: Conjunto
Proteção. Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa. Fernando Ramos, Nuno Neves, Sistemas Operativos,
Proteção Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Objetivos da aula Discutir os objetivos e o princípio basilar da proteção de um sistema Explicar como os domínios de proteção,
Domínio Números e Operações Subdomínio Adição e subtração de números racionais não negativos. Metas/Objetivos Conceitos/Conteúdos Aulas previstas
Números e Operações Adição e subtração de números racionais não negativos DEPARTAMENTO DE MATEMÀTICA DISCIPLINA: Matemática PLANIFICAÇÃO 1ºperíodo - 5º ANO - Efetuar operações com números racionais não
Aula 4: Bases Numéricas
Aula 4: Bases Numéricas Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Bases Numéricas FAC 1 / 36 Introdução e Justificativa Diego Passos (UFF)
Prof. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 2 Estrutura de um processador Prof. Leonardo Augusto Casillo Arquitetura de Von Neumann: Conceito de programa armazenado; Dados
PROGRAMAÇÃO I. Introdução
PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação
ALGORITMO DE DIJKSTRA
LGORITMO IJKSTR por runo Miguel Pacheco Saraiva de arvalho epartamento de ngenharia Informática Universidade de oimbra oimbra, Portugal [email protected] Resumo escreve-se o funcionamento do algoritmo
Distorções Dinâmicas no Tempo & Pesquisa. Distorção dinâmica no tempo Pesquisa Algoritmos gráficos de pesquisa Algoritmos de programação dinâmica
Distorções Dinâmicas no Tempo & Pesquisa Distorção dinâmica no tempo Pesquisa Algoritmos gráficos de pesquisa Algoritmos de programação dinâmica 1 Casamento de Template Baseado em Palavra Medida de Característica
ADT - Árvores. ADT Árvores Definição
ADT - Árvores Outro tipo abstrato de dados (ADT) é a árvore. Como acontece com as listas, a utilização das árvores será basicamente como estruturas de dados ao invés de tipos de dados. Ou seja, o foco
Planificação Anual (por unidades)
Planificação Anual (por unidades) Total de tempos letivos planificados: 10 Disciplina: MATEMÁTICA 5º ANO Ano letivo: 01/015 Período Unidade didática Nº DE TEMPOS PREVISTOS Total - Apresentação. - Atividades
Modelo Relacional Normalização Diagramas E-R e Tabelas Originadas
Informática II Modelo Relacional Normalização Diagramas E-R e Tabelas Originadas (TÓPICOS ABORDADOS NAS AULAS DE INFORMÁTICA II) Por: Artur Sousa / Jorge Loureiro Conceitos de entidade e atributo Tipos
Inteligência Artificial IA IV. RACIOCÍNIO BASEADO EM REGRAS
Inteligência Artificial IA Prof. João Luís Garcia Rosa IV. RACIOCÍNIO BASEADO EM REGRAS Parte 1 2004 Introdução A forma como um corpo de conhecimento sobre um certo campo é expresso por um especialista
Árvores AVL. Estrutura de Dados II Jairo Francisco de Souza
Árvores AVL Estrutura de Dados II Jairo Francisco de Souza Introdução As árvores binárias de pesquisa são projetadas para um acesso rápido à informação. Idealmente a árvore deve ser razoavelmente equilibrada
Geometria Espacial PRISMA RETO DE BASE TRIANGULAR (OU PRISMA TRIANGULAR)
Espacial 1 PRISMAS Os prismas são sólidos geométricos bastante recorrentes em Espacial. Podemos definir o prisma da seguinte forma: PRISMA RETO DE BASE TRIANGULAR (OU PRISMA TRIANGULAR) Prisma é um sólido
Aula 12 Protocolo de Roteamento EIGRP
Disciplina: Dispositivos de Rede I Professor: Jéferson Mendonça de Limas 4º Semestre Aula 12 Protocolo de Roteamento EIGRP 2014/1 09/06/14 1 2 de 34 Introdução Em 1985 a Cisco criou o IGRP em razão das
Números e Operações (NO) Álgebra (ALG) DOMÍNIO SUBDOMÍNIO OBJETIVO GERAL/DESCRITORES RECURSOS. Conhecer e aplicar propriedades dos divisores
ESCOLA BÁSICA CRISTÓVÃO FALCÃO ANO LETIVO: 2016/2017 SERVIÇO DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS DATA: Set 2016 ASSUNTO PLANIFICAÇÃO ANUAL 5º Ano RESPONSÁVEL: Grupo 230 DOMÍNIO SUBDOMÍNIO
Este trabalho foi licenciado com a Licença Creative Commons Atribuição - NãoComercial - SemDerivados 3.0 Não Adaptada
1. Introdução Definição: Parábola é o lugar geométrico dos pontos do plano cujas distâncias entre uma reta fixa, chamada de reta diretriz, e a um ponto fixo situado fora desta reta, chamado de foco da
Conteúdo Programático. Cursos Técnicos Subsequentes
Conteúdo Programático Cursos Técnicos Subsequentes Especificações das Provas Disciplinas da prova objetiva Nº questões Pesos Total de pontos Língua Portuguesa 15 2 30 Matemática 15 2 30 Total 30-60 Prova
BCC402 Algoritmos e Programação Avançada. Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Tóffolo 2011/1
BCC402 Algoritmos e Programação Avançada Prof. Marco Antonio M. Carvalho Prof. Túlio Ângelo M. Tóffolo 2011/1 Introdução ao Curso 2 Carga horária semanal 2 aulas teóricas e 2 aulas práticas (ambas em laboratório)
Inteligência Computacional
Inteligência Computacional INTRODUÇÃO ÀS REDES NEURAIS ARTIFICIAIS Renato Dourado Maia Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros Na Aula Passada... O que é uma
Ferramenta 2.1 Matriz do Modelo de Maturidade de Inovação
Ferramenta 2.1 Matriz do Modelo de Maturidade de Inovação Este é um de vários exemplos através dos quais o modelo de inovação pedagógica pode ser testado e desenvolvido, sugerindo, ao mesmo tempo, práticas
Trabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa:
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri Trabalho
SISTEMAS DE COORDENADAS
1 SISTEMAS DE COORDENADAS 2.1 Coordenadas polares no R² Fonte: Cálculo A. Funções. Limite. Derivação. Integração. Diva Marília Flemming. Mírian Buss Gonçalves. Até o presente momento, localizamos um ponto
Universidade Federal do Espírito Santo Departamento de Informática 1 o Trabalho de Algoritmos Numéricos I - 14/2 Sistemas Lineares
Universidade Federal do Espírito Santo Departamento de Informática 1 o Trabalho de Algoritmos Numéricos I - 14/2 Sistemas Lineares (Cursos: Engenharia de Computação e Ciência da Computação) Data de entrega:
