Estruturas de Dados. TAD Grafo Estruturas de Dados para Grafos. Análise Assintótica Comparativa. Desempenhos das Principais Operações do TAD

Documentos relacionados
Estrutura de Dados Grafos

não descobertos descobertos explorados descoberta cruzamento

Algoritmos e Estruturas de Dados II

Estruturas de Dados. Grafos VIII: Árvores Geradoras Mínimas. Prof. Ricardo J. G. B. Campello

Algoritmos e Estruturas de Dados II

Algoritmos em Grafos: Circuitos de Euler e Problema do Carteiro Chinês

4 GRAFOS NÃO-ORIENTADOS. 4.1 Definições. O caminho v 1, v 2,..., v n conecta v 1 a v n. Ciclo: caminho de um vértice a ele mesmo de comprimento

Dep. Matemática e Aplicações 27 de Abril de 2011 Universidade do Minho 1 o Teste de Teoria das Linguagens. Proposta de resolução

Objetivo: Conceituar espaço vetorial; Realizar mudança de base; Conhecer e calcular transformações Lineares

LRE LSC LLC. Autômatos Finitos são reconhecedores para linguagens regulares. Se não existe um AF a linguagem não é regular.

SCC-201 Introdução à Ciência de Computação II

8/6/2007. Dados os conjuntos: A={0,1} e B={a,b,c},

Trabalho 1 GRAFOS. 3. Implementar uma rotina chamada Dijkstra(G, o, d) que determina o menor caminho

Profª Cristiane Guedes VETORES. Cristianeguedes.pro.br/cefet

Modelos Teóricos para Análise de Transformadores Baseados em Modelos Simplificados de Impedância e de Elementos Concentrados

Lic. Ciências da Computação 2009/10 Exercícios de Teoria das Linguagens Universidade do Minho Folha 6. δ

Uso da memória. Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores. Alocação estática da memória. Alocação estática da memória (2)

Apresenta-se em primeiro lugar a simbologia adoptada na descrição da assemblagem de elementos finitos.

Procedimento da AASHTO/

DETERMINANTES. Notação: det A = a 11. Exemplos: 1) Sendo A =, então det A = DETERMINANTE DE MATRIZES DE ORDEM 2

ÁLGEBRA LINEAR Equações Lineares na Álgebra Linear EQUAÇÃO LINEAR SISTEMA LINEAR GEOMETRIA DA ESQUAÇÕES LINEARES RESOLUÇÃO DOS SISTEMAS

SISTEMAS DIGITAIS (SD)

Draft-v Autómatos mínimos. 6.1 Autómatos Mínimos

3. Seja Σ um alfabeto. Explique que palavras pertencem a cada uma das seguintes linguagens:

Introdução à Ciência da Computação II

Algoritmos e Estruturas de Dados I

Estruturas de Dados. Filas em que a prioridade de remoção não é cronológica. Maior prioridade não é do elemento que ingressou primeiro

SISGP - TUTORIAL PARA ACOMPANHAMENTO DE ATIVIDADES PELO RESPONSÁVEL DE ATIVIDADE

Exercícios. setor Aula 25

Análise Léxica. Construção de Compiladores. Capítulo 2. José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto

EXERCÍCIOS RESOLVIDOS DE TEORIA DOS GRAFOS

Módulo 02. Sistemas Lineares. [Poole 58 a 85]

Hierarquia de Chomsky

Diagrama de Blocos. Estruturas de Sistemas Discretos. Grafo de Fluxo. Sistemas IIR Forma Directa I

Álgebra Linear e Geometria Analítica. Espaços Vectoriais

Aula 4: Autômatos Finitos Autômatos Finitos Não-Determinísticos

Linguagens Formais e Autômatos (LFA)

SERVIÇO PÚBLICO FEDERAL Ministério da Educação

operation a b result operation a b MUX result sum i2 cin cout cout cin

ENGENHARIA ASSISTIDA POR COMPUTADOR

Exemplos de autómatos finitos

Hashing. Estruturas de Dados. Motivação

2. Prisma de base hexagonal: formado 8 faces, 2 hexágonos (bases), 6 retângulos (faces laterais).

SCC-501 Introdução à Ciência de Computação II

ntexto finição presentação áfica ilização TempMed(input,output); Var Var Begin Begin readln(t1); readln(t1); readln(t2); readln(t2);

Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Matemática para CG

Formas Quadráticas. FUNÇÕES QUADRÁTICAS: denominação de uma função especial, definida genericamente por: 1 2 n ij i j i,j 1.

Resumo. Estruturas de Sistemas Discretos. A Explosão do Ariane 5. Objectivo. Representações gráficas das equações às diferenças

Linguagens Regulares e Autômatos de Estados Finitos. Linguagens Formais. Linguagens Formais (cont.) Um Modelo Fraco de Computação

Matemática (e geometria) para CG

Aula 5: Autômatos Finitos Remoção de Não-Determinismo

Marcone Jamilson Freitas Souza. Departamento de Computação. Programa de Pós-Graduação em Ciência da Computação

Gramáticas Regulares. Capítulo Gramáticas regulares

3 Teoria dos Conjuntos Fuzzy

Exercícios de Revisão Edgard Jamhour. Terceiro Bimestre: MPLS

Hewlett-Packard O ESTUDO DO PONTO. Aulas 01 a 05. Elson Rodrigues, Gabriel Carvalho e Paulo Luiz

ESTÁTICA DO SISTEMA DE SÓLIDOS.

UNIVERSIDADE FEDERAL DE PERNAMBUCO CCEN DEPARTAMENTO DE MATEMÁTICA EXAME DE QUALIFICAÇÃO PARA O MESTRADO EM MATEMÁTICA

DECivil Secção de Mecânica Estrutural e Estruturas MECÂNICA I ENUNCIADOS DE PROBLEMAS

Apostila 02 - Linguagens Regulares Exercícios

Ano / Turma: N.º: Data: / / GRUPO I

Estruturas de Dados. Parte dos slides a seguir são adaptações, extensões e recodificações em C dos originais:

Definimos a unidade imaginária j, como sendo um número não real de tal forma que: PROPRIEDADES: j 4 = j 2 x j 2 = ( -1) x ( -1) = 1 ;

Teoria da Computação. Unidade 3 Máquinas Universais (cont.) Referência Teoria da Computação (Divério, 2000)

, onde i é a linha e j é a coluna que o elemento ocupa na matriz.

MTDI I /08 - Integral de nido 55. Integral de nido

Resolução: a) o menor valor possível para a razão r ; b) o valor do décimo oitavo termo da PA, para a condição do item a.

TRANSFORMAÇÃO DE FONTES

Unidimensional pois possui apenas uma única dimensão

CONJUNTOS NUMÉRICOS NOTAÇÕES BÁSICAS. : Variáveis e parâmetros. : Conjuntos. : Pertence. : Não pertence. : Está contido. : Não está contido.

GRUPO I. Espaço de rascunho: G 2 10

ESCOLA DR. ALFREDO JOSÉ BALBI UNITAU APOSTILA LOGARITMOS PROF. CARLINHOS NOME: N O :

UNIDADE III O Espaço

Prof. Ms. Aldo Vieira Aluno:

Resolução Numérica de Sistemas Lineares Parte I

CENTRO DE CIÊNCIAS E TECNOLOGIA AGROALIMENTAR UNIDADE ACADÊMICA DE TECNOLOGIA DE ALIMENTOS DISCIPLINA: FÍSICA I INFORMAÇÕES GERAIS. Prof.

Aula 5 Plano de Argand-Gauss

Modelos de Computação -Folha de trabalho n. 2

Produto Vetorial e Produto misto

COLÉGIO OBJETIVO JÚNIOR

1 Assinale a alternativa verdadeira: a) < <

EXAME DE INGRESSO º Período

Universidade Federal de Pelotas Vetores e Álgebra Linear Prof a : Msc. Merhy Heli Rodrigues Determinantes

Incertezas e Propagação de Incertezas. Biologia Marinha

SCC-210 Algoritmos Avançados. Capítulo 9 Grafos. Adaptado por João Luís G. Rosa

Compiladores ANÁLISE LEXICAL.

20/07/15. Matemática Aplicada à Economia LES 201

Matemática para Economistas LES 201. Aulas 5 e 6 Matrizes Chiang Capítulos 4 e 5. Luiz Fernando Satolo

CÁLCULO I. 1 Funções denidas por uma integral

Resumo. Sinais e Sistemas Transformada Z. Introdução. Transformada Z Bilateral

Curso Básico de Fotogrametria Digital e Sistema LIDAR. Irineu da Silva EESC - USP

Procedimento da AASHTO/

ROTAÇÃO DE CORPOS SOBRE UM PLANO INCLINADO

Redes elétricas Circuitos que contém resistências e geradores de energia podem ser analisados usando sistemas de equações lineares;

TÓPICOS. Equação linear. Sistema de equações lineares. Equação matricial. Soluções do sistema. Método de Gauss-Jordan. Sistemas homogéneos.

Matemática Aplicada. A Mostre que a combinação dos movimentos N e S, em qualquer ordem, é nula, isto é,

LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA CAPÍTULO 6 ARRAYS (VETORES E MATRIZES)

Universidade Federal Fluminense ICEx Volta Redonda Métodos Quantitativos Aplicados I Professora: Marina Sequeiros

Transcrição:

Estrtrs de Ddos Grfos II: Estrtrs de Ddos Prof. Ricrdo J. G. B. Cmpello Prte deste mteril é sedo em dptções e extensões de slides disponíeis em http://.dtstrctres.net (Goodrich & Tmssi). Orgnizção TAD Grfo Estrtrs de Ddos pr Grfos List de Arests List de Adjcêncis Mtriz de Adjcêncis Análise Assintótic Comprti Desempenhos ds Principis Operções do TAD Exemplo de Implementção Simples Código C de m ED Alternti

TAD Grfo Ddos: értices e rests relções de incidênci elementos rmzendos Operções (Geris): endvertices(g, e): retorn os dois értices finis d rest e (p. ex. rrnjo c/ elementos). opposite(g,, e): retorn o értice oposto n rest e. readjcent(g,, ): erddeiro se e somente se os értices e forem djcentes. replcevertex(g,, x): sstiti o elemento do értice por x. replceedge(g, e, x): sstiti o elemento d rest e por x. Operções (de Atlizção): insertvertex(g, o): insere m noo értice isoldo, rmzenndo nele o elemento o, e retorn m referênci. insertedge(g,,, o): insere m rest (,), rmzenndo nel o elemento o, e retorn m referênci. remoevertex(g, ): remoe o értice (e ss rests incidentes) e retorn o elemento rmzendo nele. remoeedge(g, e): remoe rest e, retornndo o elemento rmzendo. Operções (Otrs): incidentedges(g, ): retorn list de refs. pr s rests incidentes em. ertices(g): retorn list de refs. pr os értices do grfo G.... Not: Métodos Específicos podem ser Adiciondos pr Grfos Direciondos Estrtr de Ddos List de Arests c d z z n értices c d m rests

List de Arests c d z z c d Principis Desntgens: Verificr s rests incidentes em m ddo értice demnd percorrer tod list de rests Operção incidentedges(g, ) do TAD é O(m) O mesmo le pr checr se dois értices e são djcentes, em como pr remoer m ddo értice Operção readjcent(g,, ) do TAD é O(m) Operção remoevertex(g, ) do TAD é O(m) 5 Estrtr de Ddos - List de Adjcêncis A cd elemento d list de értices é diciondo m ponteiro pr m list de incidêncis: list de ponteiros pr ss rests incidentes. A cd elemento d list de rests são diciondos ponteiros pr s posições correspondentes ns lists de incidênci dos ses értices. 6

List de Adjcêncis A prtir de m értice, podemos cessr ss rests incidentes em tempo proporcionl o se número: incidentedges(g, ) do TAD é O(deg()) remoevertex(g, ) do TAD é O(deg()) Podemos erificr se dois értices e são djcentes percorrendo menor dentre s respectis lists xilires de incidênci: readjcent(g,, ) do TAD é O( min(deg(), deg()) ) 7 Estrtr de Ddos Mtriz de Adjcêncis A cd elemento d list de értices é diciond: Um che (índice) ssocid o értice. Acrescent-se ind m mtriz de djcêncis com: Nlo ns posições de értices não djcentes. Ponteiro pr o elemento correspondente d list de rests, ns posições de értices djcentes. 0 0 0 8

Desempenho Assintótico ds Principis Operções do TAD Grfo simples com n értices e m rests Notção Big O List de Arests List de Adjcêncis Mtriz de Adjcêncis Espço (memóri) n + m * n + m * n + m incidentedges(g, ) m deg() n readjcent(g,, ) m min(deg(), deg()) insertvertex(g, o) n * insertedge(g,,, o) remoevertex(g, ) m deg() n * remoeedge(g, e) 9 Implementção Simples: Estrtr Alternti (Skien & Reill, 00) Vértices rotldos: Ches (índices) são ssocids os értices z Arests sem elementos. Grfos estáticos, o: Inserções e remoções sem redimensionmento ds mtrizes e etores Mtrizes e etores sperdimensiondos pr: No. de értices (MAXV) Gr (MAXDEGREE) 0 0 edges 0 MAXDEGREE z ertices 0 degree MAXV 0 5

Estrtr Alternti (Skien & Reill, 00) Not: Como s rests não são representds explicitmente, ess estrtr não permite implementção ds operções endvertices, opposite e replceedge do TAD Grfo. Exercícios. Expliqe rzão de cd m ds complexiddes comptcionis d tel do slide 9, lém dqels qe form disctids.. N implementção simples de grfo em C disctid em l, não se incli n estrtr principl (strct grph) m etor ertices pr rmzenr os elementos dos értices. Modifiqe ess estrtr de tl form qe esse etor sej contempldo. Not: Considere qe os elementos nos értices são strings com no máx. 0 crcteres e qe értices inexistentes rmzenm nlo (\0).. Estde em (Skien & Reill, 00) s rotins em C ds operções sore grfos implementdos segndo estrtr lternti disctid em l: inserção e remoção de rests / értices. 6

Exercícios. Represente grficmente o grfo ixo em cd m ds três diferentes estrtrs de ddos clássics disctids em l: list de rests, list de djcêncis e mtriz de djcêncis B - A 0 D.9 E 0 C 5 5. Ignore os pesos ds rests e repit o exemplo nterior pr estrtr lternti tmém disctid. Nesse cso, represente o conteúdo d mtriz edges e dos etores degree e ertices. 6. Elore lgns diferentes grfos e repit os Exercícios e 5. Biliogrfi M. T. Goodrich nd R. Tmssi, Dt Strctres nd Algorithms in C++/J, John Wiley & Sons, 00/005. N. Ziini, Projeto de Algoritmos, Thomson,. Edição, 00. T. H. Cormen, C. E. Leiserson, nd R. L. Riest, Introdction to Algorithms, MIT Press, nd Edition, 00. S. Skien e M. Reill, Progrmming Chllenges: The Progrmming Contest Trining Mnl, Springer-Verlg, 00. 7