QUESTÕES DE PROVAS ANTIGAS
|
|
|
- Célia Estrela Garrau
- 8 Há anos
- Visualizações:
Transcrição
1 CT-24 QUESTÕES DE PROVAS ANTIGAS ) Preencha a tabela abaixo com Î ou Ï: ω(log n) Θ(n) O(n log n) Ω(n 2 ) o(n ) 6n + 2n log n + 4n + n.log n + log n 2) Dada a árvore binária abaixo, escreva os seus percursos pré-ordem, in-ordem e pós-ordem ) Utilizando as funcionalidades de uma pilha (top, push, pop e isempty), escreva um algoritmo que leia um número inteiro positivo e imprima a sua correspondente representação binária. 4) Dado o algoritmo recursivo abaixo, calcule o seu tempo exato de execução. Rec(n) { if (n==) return ; return Rec(n-) + Rec(n-) + Rec(n-) + ; Importante: considere que as operações básicas (multiplicações, subtrações, comparações, etc.) gastam tempo constante. 5) Prove por indução: 5 n n + é divisível por 8, para n 0. 6) William G. Horner sugeriu uma maneira alternativa de exprimir polinômios. Por exemplo, o polinômio p(x) = x +8x 2-4x+9 teria o seguinte formato de Horner: p(x) = 9+x(-4+x(8+x.)). Dado um polinômio p(x) de grau n e um parâmetro x, calcule o número de multiplicações e adições necessárias para avaliá-lo: a) através da sua expressão convencional; b) através do formato de Horner.
2 7) Escreva algoritmos recursivos que recebam como parâmetro um número inteiro x e calculem o polinômio p(x) = akx k, 0 k n: a) através da sua expressão convencional; b) através do formato de Horner. Suponha que os coeficientes ak estejam armazenados em um vetor de dimensão n+. 8) Descreva detalhadamente o que é um heap. Dê um exemplo. 9) Explique as ideias do algoritmo QuickSort e calcule a ordem do pior caso. 0) Explique as ideias do algoritmo MergeSort e calcule a ordem do pior caso. ) Descreva os passos da ordenação crescente do algoritmo RadixSort para os seguintes números: 454, 90, 5, 2, 88, 90, 0, 675, 227, 6. 2) Dê um exemplo de função que seja simultaneamente: a) O(n 2 ) e Ω(log 2 n) b) ω(log n) e o(n) c) Θ(n) e Ω(n ) d) o(2 n ) e Ω(n 50 ) e) O(n 2 ) e ω(n.log n) Se em algum caso não existir tal função, explique por quê. ) Foi visto que uma fila de prioridades (de máximo) é uma estrutura com as seguintes funcionalidades: Max(), ExtractMax(), Insert(x) e Modify(k,x). Também vimos que pode ser eficientemente implementada com um heap. Por outro lado, se quiséssemos implementá-la com uma lista ligada, explique como elaboraria essas 4 funcionalidades (basta um pseudocódigo superficial), e qual seriam as suas complexidades de tempo. 4) Sem utilizar o comando for(;;) (e nenhum outro comando de repetição), escreva um algoritmo recursivo que calcule o produto de duas matrizes quadradas A e B de ordem n, armazenando o resultado numa matriz C. Suponha que essas matrizes sejam variáveis globais, e que C esteja inicialmente zerada. 5) O produto interno de dois vetores n-dimensionais u = (u,..., un) e v = (v,..., vn) é definido como ui.vi. Escreva um algoritmo recursivo que, dados dois vetores n-dimensionais, calcule o seu produto interno.
3 6) Explique para que serve uma árvore AVL. Dê um exemplo de aplicação prática. 7) Prove por indução matemática: 2 n < n!, para n >. 8) Suponha que um dado vetor de n elementos seja "tetratônico", isto é, seja formado por 4 subsequências ordenadas, cujos comprimentos são desconhecidos. Veja um exemplo a seguir, onde n = (as setas indicam a ordenação): Para vetores desse estilo, descreva um algoritmo de ordenação que seja ótimo. Justifique. 9) Calcule as complexidades de tempo e de espaço do programa abaixo, cujo corpo principal consiste apenas na chamada de Rec(n): Rec(n) { if (n==) return ; return *Rec(n-) + Funcao(n); Funcao(n) { for (i=0; i<n; i++) for(j=i; j>0; j--) v[i,j] = 4*i*i+j; return v[n-,n-]; Importante: a) Considere que as operações básicas (multiplicações, subtrações, comparações, etc.) gastam tempo constante. b) O vetor v tem dimensões [0..n-, 0..n-] e é uma variável global. 20) O algoritmo abaixo realiza a busca binária de chave em um vetor v de índices 0 a N-, ordenado crescentemente: int PesquisaBinaria (int v[], int chave, int N) { int inf, sup, meio; inf = 0; sup = N-; while (inf <= sup) { meio = (inf+sup)/2; if (chave == v[meio]) return meio; if (chave < v[meio]) sup = meio - ; else inf = meio + ; return -; /* não encontrado */ Com o uso de recorrências, demonstre que a sua complexidade de pior caso é Θ(log N). Observação: Basta considerar o caso em que N é potência de 2.
4 2) Dado um vetor não ordenado de tamanho n, apresente um algoritmo que encontre o maior e o menor elementos, mas realizando no máximo n/2 comparações. 22) Suponha um vetor de n posições cuja primeira metade está em ordem crescente. Para completar a ordenação desse vetor, os elementos da segunda metade são inseridos na parte ordenada, um a um, utilizando-se busca binária. Essa ordenação pode ser terminada em tempo O(n.log n)? Justifique. 2) Prove por indução que uma árvore binária completa com n = 2 k folhas tem altura k = log2 n. O grafo abaixo será utilizado nas três próximas questões. a b 5 4 c d e f g 2 h 24) Através do Algoritmo de Dijkstra, encontre o caminho mínimo entre os vértices h e a. Deixe indicado os passos que seguiu. 25) Através do Algoritmo de Tarjan, encontre as componentes fortemente conexas. Deixe indicados os passos que seguiu. 26) Através do Algoritmo de Kruskal ou de Prim, encontre a árvore geradora de custo mínimo. Deixe indicado os passos que seguiu. Importante: ignore a orientação dos arcos. 27) Escreva um algoritmo divisão-e-conquista para encontrar o valor máximo do vetor A[..n]. Calcule a complexidade deste algoritmo.
5 28) Através de programação dinâmica, escreva um algoritmo que, dado n, monte uma matriz de ordem n com os valores do triângulo de Pascal. Calcule a complexidade deste algoritmo. Exemplo para n = 6: ) Monte o autômato de busca do padrão bacabacb. 0) Dê a classificação de Flynn (966) e descreva em que consistem cada um dos seus itens. Explique qual é a nomenclatura atual equivalente. ) Dado o texto Faturei com folga na prova de complexidade de algoritmos e o padrão algo, indique (e justifique) o número de comparações que os algoritmos abaixo realizam até encontrarem esse padrão no texto: a) Knuth-Morris-Pratt; b) Boyer-Moore. 2) Considere o digrafo abaixo: a) Supondo armazenamento por listas de adjacências, onde os vértices estão em ordem crescente, aplique o algoritmo de Tarjan a partir do vértice 7, classificando os arcos em 4 conjuntos diferentes: Árvore, Avanço, Retorno e Cruzamento. Algum desses conjuntos ficou vazio? Por quê? b) Encontre uma ordenação topológica para ele, caso exista. Justifique. 6 7 ) Escreva a matriz de incidências do digrafo da questão anterior. 4) Ainda para o mesmo digrafo, desconsidere as orientações das arestas e aplique a variante do algoritmo de Tarjan a partir do vértice para encontrar seus vértices e arestas de corte.
6 5) Através do algoritmo de programação dinâmica visto em aula, encontre a maior subsequência comum de <AACGTGGCCTA> e <CACGTTCCA>. 6) Dado o texto Esta prova é mais longa que complicada e o padrão cada, indique (e justifique) o número de comparações que os dois algoritmos abaixo realizam até encontrarem esse padrão no texto: a) Knuth-Morris-Pratt; b) Boyer-Moore. Importante: considere os caracteres de espaço presentes no texto. 7) Em aula foi apresentada uma implementação do algoritmo de Prim que utiliza uma estrutura de heap. Se ao invés dessa estrutura utilizássemos uma lista ligada, na qual os vértices fossem mantidos em ordem crescente de custo, qual seria a complexidade de tempo do algoritmo? Justifique. 8) Um determinado algoritmo sequencial tem complexidade de tempo O(n 2 ). Um aluno elaborou a seguinte paralelização escalável desse algoritmo, onde p é o número de processadores: Complexidade de tempo Intervalo de processadores O(n 2 /p + log n) 0 < p < log n O(n/p + log 2 n) log n p < n O(n 2 /p) n p n 2 A partir desses resultados, é possível verificar se o aluno cometeu algum erro? Qual? Explique. 9) Através de algum algoritmo visto em aula, encontre uma ordenação topológica para o digrafo abaixo. Indique os passos que seguiu ) Para o digrafo da questão anterior, encontre as distâncias mínimas a partir do vértice utilizando o algoritmo de Dijkstra. Indique os passos que seguiu. 4) Ainda nesse mesmo digrafo, desconsidere a orientação dos arcos e encontre a árvore geradora de custo mínimo. Para isso, escolha o algoritmo de Prim ou de Kruskal, e indique os passos que seguiu.
7 42) A partir do algoritmo de Tarjan visto em aula, classifique os quatro tipos de arestas do digrafo abaixo. Comece a exploração a partir do vértice i. Considere armazenamento em ordem alfabética. i a b c h g d f e 4) Com o algoritmo de Tarjan, encontre as componentes fortemente conexas do digrafo anterior. Considere armazenamento em ordem alfabética. 44) Como é possível saber se o método guloso funciona ou não na resolução de um determinado problema? Explique. 45) Dado o texto abaixo, encontre uma codificação de Huffman: AABCCDAABEAEDBCCEEAAA 46) Dada o produto de matrizes abaixo, simule o algoritmo de programação dinâmica que encontra a melhor parentização: P = M. M2. M. M4. M5 Respectivas dimensões das matrizes Mi: (2x), (x7), (7x8), (8x4), (4x). 47) Calcule o produto 4 x 729 através do algoritmo de Karatsuba. Importante: basta simular apenas o primeiro nível de recursão. 48) Para grafos esparsos (com pouquíssimas arestas), qual é a melhor estrutura de armazenamento? Justifique. E para grafos densos? 49) Após a aplicação do algoritmo de Dijkstra em um grafo, constatou-se que a distância entre alguns pares de vértices era infinita. Se todas as arestas desse grafo têm custos positivos, o que se pode afirmar sobre ele? Justifique. 50) Dado um digrafo, indique como seria possível encontrar um dos seus eventuais ciclos através do algoritmo de Tarjan.
Lista de Exercícios de CES-11 CTA - ITA - IEC
Lista de Exercícios de CES11 CTA ITA IEC Importante: Não vale nota, ou seja, não é preciso entregar! A. Passagem de parâmetros, escopo de variáveis, recursão 1. Analise o código abaixo. Qual é a sua saída?
Busca Binária. Aula 05. Busca em um vetor ordenado. Análise do Busca Binária. Equações com Recorrência
Busca Binária Aula 05 Equações com Recorrência Prof. Marco Aurélio Stefanes marco em dct.ufms.br www.dct.ufms.br/ marco Idéia: Divisão e Conquista Busca_Binária(A[l...r],k) 1:if r < lthen 2: index = 1
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos Apresentação da Disciplina Edirlei Soares de Lima Por que Estudar Algoritmos? Razões Práticas e Teóricas: Devemos conhecer um conjunto de algoritmos
Classes, Herança e Interfaces
Escola de Artes, Ciências e Humanidades EACH-USP ACH2002 Introdução à Ciência da Computação II Professor: Delano Medeiros Beder revisada pelo professor: Luciano Digiampietri EACH Segundo Semestre de 2011
Lista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013
Lista 1 - PMR2300 Fabio G. Cozman 3 de abril de 2013 1. Qual String é impressa pelo programa: p u b l i c c l a s s What { p u b l i c s t a t i c void f ( i n t x ) { x = 2 ; p u b l i c s t a t i c void
Técnicas de projeto de algoritmos: Indução
Técnicas de projeto de algoritmos: Indução ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo [email protected] 08/2008
Edital de Seleção 053/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 053/2016 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
1. O que é a eficiência assintótica de um algoritmo. Explique com suas palavras.
Disciplina: Estrutura de Dados II Turma: 4EC/5CC Data: 13/11/15 Nota: Professor: Renato E. N. de Moraes Semestre: 2015-2 Valor: 0,0 pts Aluno: Lista de exercícios 04 1. O que é a eficiência assintótica
Edital de Seleção 032/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 032/2016 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Edital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 023/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
UNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação
UNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO Departamento de Ciências de Computação SCC-203 ALGORITMOS E ESTRUTURAS DE DADOS II Prova - Gabarito Nome: Nro. USP ) O matemático
AVALIAÇÃO DE CONHECIMENTO ESPECÍFICO
AVALIAÇÃO DE CONHECIMENTO ESPECÍFICO PROGRAMA DE PÓS- GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO 01. Toda arvore binária possui as seguintes propriedades: I. Todos os nós de uma sub- árvore direita são maiores
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Professor Ariel da Silva Dias Algoritmos Divisão e Conquista Construção incremental Resolver o problema para um sub-conjunto dos elementos de entrada; Então, adicionar
Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo
PMR2300 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó (exceto a
Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Algoritmo de Dijkstra Estudo e Implementação
Teoria dos Grafos 0/0 Algoritmo de Dijkstra Estudo e Implementação Professora: Claudia Boeres Alunos: José Alexandre Macedo Maycon Maia Vitali Problema do Caminho Mínimo Qual o caminho mínimo entre um
Projeto e Análise de Algoritmos Aula 4: Dividir para Conquistar ou Divisão e Conquista ( )
Projeto e Análise de Algoritmos Aula 4: Dividir para Conquistar ou Divisão e Conquista (2.1-2.2) DECOM/UFOP 2013/1 5º. Período Anderson Almeida Ferreira Adaptado do material desenvolvido por Andréa Iabrudi
CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches
CES-11 Algoritmos e Estruturas de Dados Carlos Alberto Alonso Sanches Juliana de Melo Bezerra Ideia de Tarjan (1972) Durante a exploração em profundidade de um digrafo, podemos numerar seus vértices de
Busca em Memória Primária Estrutura de Dados II
Centro de Ciências Exatas, Naturais e de Saúde Departamento de Computação Busca em Memória Primária Estrutura de Dados II Estrutura de Dados II COM10078 2017-I Prof. Marcelo Otone Aguiar [email protected]
1. Se v é um vetor, qual a diferença conceitual entre as expressões v[70] e v+70? [2 ponto]
Universidade Federal do ABC Avaliação: Prova 01 Disciplina: BC1424 - Algoritmos e Estruturas de Dados I Turma: Noturno Professor: Jesús P. Mena-Chalco Data: 15/03/2016 Nome completo: RA: Instruções para
Lista 1. 8 de abril de Algorithms: Capítulo 0, exercícios 1 e 2. Tardos: Todos exercícios do cap 2 do livro texto, exceto 7 e 8 letra b.
Lista 1 8 de abril de 2013 1 Exercícios Básicos 1.1 Na bibliografia Algorithms: Capítulo 0, exercícios 1 e 2. Tardos: Todos exercícios do cap 2 do livro texto, exceto 7 e 8 letra b. 1.2 Outros 1. Projete
Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches
CT-234 Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural Carlos Alberto Alonso Sanches CT-234 2) Algoritmos recursivos Indução matemática, recursão, recorrências Indução matemática Uma
Projeto e Análise de Algoritmos
Projeto e Algoritmos Pontifícia Universidade Católica de Minas Gerais [email protected] 26 de Maio de 2017 Sumário A complexidade no desempenho de Quando utilizamos uma máquina boa, ela tende a ter
INF1010 Lista de Exercícios 2
INF00 Lista de Exercícios 2 Árvores. Construir algoritmo para dada uma árvore n-ária, transformá-la em uma árvore binária. 2. Qual a maior e menor quantidade de nós que podem existir em uma árvore binária
PLANO DE DISCIPLINA DISCIPLINA: Análise de Algoritmos
UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE COMPUTAÇÃO BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO PLANO DE DISCIPLINA DISCIPLINA: Análise de Algoritmos ( X ) SEMESTRAL - ( ) ANUAL CÓDIGO: GBC052 PERÍODO:
MAC121 ALGORITMOS E ESTRUTURAS DE DADOS I 2O. SEMESTRE DE 2017
PROVA 1 MAC121 ALGORITMOS E ESTRUTURAS DE DADOS I 2O. SEMESTRE DE 2017 Nome: Número USP: Instruções: (1 ) Esta prova é individual. (2 ) Não destaque as folhas deste caderno. (3 ) A prova consiste de 6
Grafos - Introdução. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/ / 32
Grafos - Introdução Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/2015 1 / 32 Conceito Definição de Grafo Formalmente, um grafo é: Um conjunto de nós/vértices (V).
Prova Didática Grafos: Árvores Geradoras e Caminhos Mínimos, Análise de Complexidade
Prova Didática Grafos: Árvores Geradoras e Caminhos Mínimos, Análise de Complexidade Gustavo E.A.P.A. Batista 25 de janeiro de 2005 1 Contextualização 2 Caminhos Mínimos Caminhos Mínimos de uma Origem
ANÁLISE DE ALGORITMOS
ANÁLISE DE ALGORITMOS Paulo Feofiloff Instituto de Matemática e Estatística Universidade de São Paulo agosto 2009 Introdução P. Feofiloff (IME-USP) Análise de Algoritmos agosto 2009 2 / 102 Introdução
Centro Federal de Educação Tecnológica de Minas Gerais Programa de Pós-Graduação em Modelagem Matemática e Computacional
Centro Federal de Educação Tecnológica de Minas Gerais Programa de Pós-Graduação em Modelagem Matemática e Computacional Disciplina: Algoritmos e Estruturas de Dados Professor: Flávio Cardeal Lista de
Algoritmos de pesquisa
Define-se pesquisa como a operação que permite encontrar ou concluir que não existe, um dado elemento num dado conjunto. A pesquisa de um elemento pode ser feita num conjunto ordenado ou não. Quando o
ICET CURSO: Ciência da Computação e Sistemas de Informação (Estrutura de Dados) Estudos Disciplinares Campus: Data: / / Nome:
ICET CURSO: Ciência da Computação e Sistemas de Informação (Estrutura de Dados) Estudos Disciplinares Campus: Data: / / Nome: RA: Turma: Questão 1 (ENADE Computação 2005) No famoso jogo da Torre de Hanói,
Estruturas de Dados 2
Estruturas de Dados 2 Técnicas de Projeto de Algoritmos Dividir e Conquistar IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 1/83 Projeto de Algoritmos por Divisão
Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
ALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro Sala 110 Prédio da Computação IECE - ITA
ALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro [email protected] Sala 110 Prédio da Computação www.comp.ita.br/~pauloac IECE - ITA MÉTODOS MAIS EFICIENTES QUE O(N 2 ) Método Quicksort Método
Grafos. Exemplo de árvore geradora mínima. Notas. Notas. Notas. Notas. Árvores espalhadas mínimas. Como construir uma árvore geradora miníma
Grafos Árvores espalhadas mínimas Conteúdo Introdução Como construir uma árvore geradora miníma Algoritmos Referências Introdução Dado um grafo conectado não orientado G = (V, E) e uma função peso w :
Ordenação Externa. Ordenação Externa. Ordenação Externa. Ordenação Externa
Ordenação Externa Ordenação Externa Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação
5. Algoritmos de Ordenação
Introdução à Computação II 5952011 5. Algoritmos de Ordenação Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 5.1. Ordenação por Inserção 5.2. Ordenação por Seleção
Universidade Federal de Mato Grosso do Sul. Lista de Exercícios 2
Universidade Federal de Mato Grosso do Sul Facom - Faculdade de Computação Programação de Computadores I - Engenharia Ambiental Lista de Exercícios 2 Exercícios usando if 1. Escreva um programa que leia
Demonstração. Relação invariante chave. Implementações do algoritmo de Prim. Implementação grosseira
Algoritmo de Prim Simulação S. Algoritmos em Grafos º sem / Franja A franja (= fringe) de uma subárvore T é o conjunto de todas as arestas que têm uma ponta em T e outra ponta fora Exemplo: As arestas
Análise e Síntese de Algoritmos. Revisão CLRS, Cap. 7-10
Análise e Síntese de Algoritmos Revisão CLRS, Cap. 7-10 Contexto Revisão Algoritmos e complexidade Notação Fundamentos: somatórios, recorrências, etc. Exemplos de algoritmos Ordenação Procura Selecção
Mergesort. Aula 04. Algoritmo Mergesort. Divisão e Conquista. Divisão e Conquista- MergeSort
Mergesort Aula 0 Divisão e Conquista- MergeSort Prof. Marco Aurélio Stefanes marco em dct.ufms.br www.dct.ufms.br/ marco Mergesort é um algoritmo de ordenação recursivo Ele recursivamente ordena as duas
ANÁLISE DE ALGORITMOS (INF 1721)
PUC-Rio Departamento de Informática Prof. Marcus Vinicius S. Poggi de Aragão (3WA) Lorenza Moreno e David Sotelo (3WB) Horário: 2as. e 4as. 15-17hs (3WA), 3as. e 5as. 19-21 (3WB) 5 de abril de 2010 Período:
TEORIA: 60 LABORATÓRIO: 0
Universidade Federal do ABC Rua Santa Adélia, 166 - Bairro Bangu - Santo André - SP - Brasil CEP 09.210-170 - Telefone/Fax: +55 11 4996-3166 1. CÓDIGO E NOME DA DISCIPLINA: BC1435 - Análise de Algoritmos
INF111 Programação II Aulas 11, 12, 13 Ordenação
INF Programação II Aulas,, Ordenação Departamento de Informática UFV Ordenação A ordenação é o processo de organizar um conunto (vetor) de n obetos ou registros segundo uma determinada ordem crescente
Otimização em Grafos
Otimização em Grafos Luidi G. Simonetti PESC/COPPE 2017 Luidi Simonetti (PESC) EEL857 2017 1 / 33 Definição do Problema Dado: um grafo ponderado G = (V, E), orientado ou não, onde d : E R + define as distâncias
Divisão e conquista. Eficiência de divisão e conquista
Divisão e conquista Divisão: resolver recursivamente problemas mais pequenos (até caso base) Conquista: solução do problema original é formada com as soluções dos subproblemas á divisão quando o algoritmo
ORDENAÇÃO POR INTERCALAÇÃO
AULA 6 ORDENAÇÃO POR INTERCALAÇÃO Na aula 5 revimos os métodos de ordenação mais básicos, que são todos iterativos, simples e têm tempo de execução de pior caso proporcional a n 2, onde n é o tamanho da
Universidade de São Paulo
Universidade de São Paulo Instituto de Ciências Matemáticas e Computação SCE5763 - Tipos e Estrutura de Dados - Luis Gustavo Nonato 2 a Lista de Exercícios 1. Seja A um array de inteiros. Escreva algoritmos
DAINF - Departamento de Informática
DAINF - Departamento de Informática Algoritmos 2 - Árvore binária de busca Prof. Alex Kutzke ( http://alex.kutzke.com.br/courses ) 30 de Novembro de 2015 Slides adaptados do material produzido pelo Prof.
Teoria dos Grafos Aula 8
Teoria dos Grafos Aula 8 Aula passada Grafos com pesos, caminhos e distâncias Ideia e algoritmo de Dijkstra Dijkstra o próprio Aula de hoje Corretude de Dijkstra Fila de prioridades e Heap Dijkstra eficiente
BCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 13: Ordenação: MergeSort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes Email: [email protected]
Solução de Recorrências
CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS Solução de Recorrências Algoritmos e Estruturas de Dados I Natália Batista https://sites.google.com/site/nataliacefetmg/ [email protected]
Projeto e Análise de Algoritmos Aula 8: Algoritmos Gulosos (DPV 5; CLRS 4)
1 Projeto e Análise de Algoritmos Aula 8: Algoritmos Gulosos (DPV 5; CLRS 4) DECOM/UFOP 2013/1 5º. Período Anderson Almeida Ferreira Adaptado do material de Andréa Iabrudi Tavares BCC241/2012-2 3 Comparação
ALGORITMOS em linguagem C
ALGORITMOS em linguagem C Paulo Feofiloff Instituto de Matemática e Estatística Universidade de São Paulo Campus/Elsevier. Algoritmos em linguagem C Paulo Feofiloff editora Campus/Elsevier, 2009 www.ime.usp.br/
ANÁLISE DE ALGORITMOS (INF 1721)
PUC-Rio Departamento de Informática Prof. Marcus Vinicius S. Poggi de Aragão (3WA) Horário: 2as. e 4as. 9-11hs (3WA) 3 de dezembro de 2016 Período: 2016.2 ANÁLISE DE ALGORITMOS (INF 1721) 3 a Lista de
Programação Estruturada
Programação Estruturada Recursão Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Recursão Recursão 1 Recursão 2
Análise de Algoritmos Algoritmos de Ordenação
Análise de Algoritmos Algoritmos de Ordenação Nelson Cruz Sampaio Neto [email protected] Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação 5 de abril de 2016
Algoritmos de Ordenação
Algoritmos de Ordenação! Problema: encontrar um número de telefone em uma lista telefônica! simplificado pelo fato dos nomes estarem em ordem alfabética! e se estivesse sem uma ordem?! Problema: busca
Marcelo Keese Albertini Faculdade de Computação Universidade Federal de Uberlândia
Introdução à Análise de Algoritmos Marcelo Keese Albertini Faculdade de Computação Universidade Federal de Uberlândia Aula de hoje Nesta aula veremos: Sobre a disciplina Exemplo: ordenação Sobre a disciplina
Revisão: Tipo Abstrato de Dados Recursividade
Algoritmos e Estrutura de Dados II Revisão: Tipo Abstrato de Dados Recursividade Prof a Karina Oliveira [email protected] Introdução Estudo das estruturas de dados envolve dois objetivos complementares:
1 Elementos Básicos da Linguagem C Parte 1: Revisão da Linguagem C
Conteúdo Resumido... v Tabela de Conteúdo... vii Lista de Figuras... xvii Lista de Tabelas... xxiii Lista de Algoritmos... xxv Prefácio... xxvii Objetivos e Público-alvo Organização do Livro Material Complementar
Fabio G. Cozman, Thiago Martins 2017
Lista 1 - adendo - PMR3201 Fabio G. Cozman, Thiago Martins 2017 Exercícios 1. (P1 2016) A listagem a seguir mostra o código de uma função que converte uma cadeia de caracteres com a representação decimal
Algoritmos de Ordenação: QuickSort
Algoritmos de Ordenação: QuickSort ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo [email protected] 10/2008 Material
Edital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Principais paradigmas do projeto de algoritmos - Recursividade - Tentativa e erro - Divisão e Conquista - Programação dinâmica - Algoritmos Gulosos e de Aproximação
ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES
ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES Listas de Prioridades! Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade! A prioridade associada a um dado pode
Grafos: Busca. SCE-183 Algoritmos e Estruturas de Dados 2. Thiago A. S. Pardo Maria Cristina
Grafos: Busca SCE-183 Algoritmos e Estruturas de Dados 2 Thiago A. S. Pardo Maria Cristina Percorrendo um grafo Percorrendo um Grafo Percorrer um grafo é um problema fundamental Deve-se ter uma forma sistemática
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Métodos de busca - seqüêncial - binária Prof. Rodrigo Rocha [email protected] http://www.bolinhabolinha.com Onde Estamos Ementa Revisão: Estrutura de dados;crescimento
PUC-Rio Departamento de Informática Prof. Marcus Vinicius S. Poggi de Aragão Período: Horário: 4as-feiras de 13 às 16 horas - Sala 520L
PUC-Rio Departamento de Informática Prof. Marcus Vinicius S. Poggi de Aragão Período: 20047.1 Horário: 4as-feiras de 13 às 16 horas - Sala 520L PROJETO E ANÁLISE DE ALGORITMOS (INF 2926) Lista 1 1. Considere
Estrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB
Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB [email protected] Árvores (parte 3) Estruturas de Dados 2 Organização dos dados: Linear: Listas, pilhas, filas. Relação sequencial.
