Algoritmos Paralelos - ordenação
|
|
|
- Vitorino Palha Amorim
- 9 Há anos
- Visualizações:
Transcrição
1 Algoritmos Paralelos - ordenação Fernando Silva DCC-FCUP (Alguns dos slides são baseados nos do livro Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers, 2nd ed. de B. Wilkinson) Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 1 / 25
2 Ordenação em Paralelo Porquê? é uma operação frequente em muitas aplicações Objectivo? ordenar uma sequência de números (valores) por ordem crescente usando n processadores Speedup potencial? melhor algoritmo sequencial tem complexidade O(n log n) o melhor a que podemos aspirar com um algoritmo paralelo, usando n processadores é: complexidade óptima do algoritmo paralelo: O(n log n)/n = O(log n) Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 2 / 25
3 Comparação-e-troca com troca de mensagens (1/2) A ordenação sequencial requer a comparação de valores e a sua permuta nas posições que ocupam na sequência. E se for em paralelo? E se a memória for distribuída? versão 1: P 1 envia A para P 2, este compara B com A e envia para P 1 o min(a, B). Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 3 / 25
4 Comparação-e-troca com troca de mensagens (2/2) versão 2: P 1 envia A para P 2 ; P 2 envia B para P 1 ; P 1 faz A = min(a, B) e P 2 faz B = max(a, B). Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 4 / 25
5 Partição de dados Versão 1: n números e p processadores n/p números atribuídos a cada processador. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 5 / 25
6 Junção de duas sub-listas versão 2: Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 6 / 25
7 Bubble Sort (método da bolha) compara dois a dois e troca se estiverem fora de ordem. maiores valores vão sendo deslocados para o final da lista. número de comparações e trocas: n 1 i=1 i = n(n 1) 2 o que corresponde a uma complexidade O(n 2 ). Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 7 / 25
8 Exemplo bubble-sort Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 8 / 25
9 Bubble Sort Paralelo Ideia é ter várias iterações a correr em paralelo. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 9 / 25
10 Par-Ímpar com transposição (1/2) é uma variante do bubble-sort opera em duas fases alternadas: Fase-par: os processos par trocam números com os seus vizinhos direitos. Fase-ímpar: os processos ímpar trocam números com os seus vizinhos direitos. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 10 / 25
11 Par-Ímpar com transposição (2/2) Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 11 / 25
12 Algoritmo paralelo - Par-Ímpar com transposição void ODD-EVEN-PAR(n) { id = process label for (i= 1; i<= n; i++) { if (i é ímpar) if (id for ímpar) compara-e-troca-min(id+1); else compara-e-troca-max(id-1); if (i é par) if (id for par) compara-e-troca-min(id+1); else compara-e-troca-max(id-1); } } Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 12 / 25
13 Mergesort (1/2) Exemplo de um algoritmo divide-and-conquer Método de ordenação em que para ordenar um vector, subdivide-o em duas partes, aplica novamente o método a cada uma das partes e quando estas estiverem ordenadas (2 vectores ordenados) com m e n elementos, faz-se a junção para produzir um vector ordenado que contém os m + n elementos do vector inicial. A complexidade é, em média, O(n log n). Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 13 / 25
14 Mergesort em paralelo (2/2) Usando uma atribuição de trabalho a processos em árvore. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 14 / 25
15 Quicksort em paralelo Usando uma atribuição de trabalho a processos em árvore. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 15 / 25
16 Problemas com a alocação de processos em árvore a divisão inicial inicia-se com apenas um processo, o que é logo limitador. no quicksort, em geral a árvore de processos não será balanceada selecção do pivot é muito importante para que possa ser eficiente. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 16 / 25
17 Odd-Even mergesort complexidade: O(log 2 n) junção de duas listas a 1, a 2,..., a n e b 1, b 2,..., b n, onde n é uma potência de 2. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 17 / 25
18 Odd-Even mergesort Aplicar recursivamente odd-even merge: Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 18 / 25
19 Bitonic Sort (1/7) complexidade: O(log 2 n) uma sequência é bitónica se contém duas sequências, uma crescente e outra decrescente, i.e. a 1 < a 2 <... < a i 1 < a i > a i+1 > a i+2 >... > a n para algum i t.q. (0 i n) uma sequência é bitónica se a propriedade descrita for conseguida por rotação circular para a direita dos seus elementos. Exemplos: Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 19 / 25
20 Bitonic Sort (2/7) Característica especial das sequências bitónicas: se fizermos a operação comparar-e-trocar com os elementos a i e a i+n/2, para todo o i, numa sequência de tamanho n, obtemos duas sequências bitónicas, em que os números de uma sequência são todos menores que os da outra sequência. Exemplo: começamos com a sequência 3, 5, 8, 9, 7, 4, 2, 1 e obtemos: Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 20 / 25
21 Bitonic Sort (3/7) a operação compara-e-troca desloca valores menores para a esquerda e maiores para a direita. dada uma sequência bitónica, aplicando recursivamente estas operações obtemos uma lista ordenada. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 21 / 25
22 Exemplo Bitonic Sort (4/7) Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 22 / 25
23 Bitonic Sort (5/7) Para ordenar uma sequência não ordenada juntar sequências em sequências bitónicas maiores, começando com pares de números adjacentes, alternando monotonicidade. e no final, a sequência bitónica é ordenada numa única sequência crescente. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 23 / 25
24 Bitonic Sort (6/7) Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 24 / 25
25 Bitonic Sort (7/7) Sequência não ordenada sequência bitónica sequência ordenada. Fernando Silva (DCC-FCUP) Algoritmos Paralelos - ordenação 25 / 25
BCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 14: Ordenação: QuickSort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes Email: [email protected]
Ordenação e Pesquisa de Dados. Aula 07 Insertion Sort e Bubble Sort
Ordenação e Pesquisa de Dados Aula 07 Insertion Sort e Bubble Sort Felipe S. L. G. Duarte [email protected] Algoritmos de Ordenação A partir de agora iremos estudar os seguintes algoritmos
6. Pesquisa e Ordenação
6. Pesquisa e Ordenação Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 6. Pesquisa e Ordenação Estruturas de Dados 1 / 30 Pesquisa de Informação A pesquisa eficiente de informação
Exemplo de Arquitetura: Cliente/Servidor com Mestre e Escravos. Interface. Fator de speed-up. Speed-up
Exemplo de Arquitetura: Cliente/Servidor com Mestre e s Arquitetura Mestre- Speed-up / Cliente Mestre Prof João Paulo A Almeida (jpalmeida@infufesbr) Cliente 2015/01 - INF02799 Com alguns slides de Parallel
Algoritmos e Estruturas de Dados I. Recursividade. Pedro O.S. Vaz de Melo
Algoritmos e Estruturas de Dados I Recursividade Pedro O.S. Vaz de Melo Problema Implemente uma função que classifique os elementos de um vetor em ordem crescente usando o algoritmo quicksort: 1. Seja
ALGORITMOS DE ORDENAÇÃO RECURSIVOS
1/14 ALGORITMOS DE ORDENAÇÃO RECURSIVOS Ordenação rápida ( Quicksort ) 2/14 Ordenação rápida ( Quicksort ) Ideia - Baseia-se num princípio muito simples que, quando aplicado recursivamente, acaba por ordenar
Algoritmos de ordenação Ordenação rápida ( Quicksort )
Ordenação rápida ( Quicksort ) Baseia-se num princípio muito simples que, quando aplicado recursivamente, acaba por ordenar o vector. Este princípio é composto por 2 passos essenciais: 1. Escolher um elemento
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]
Exemplo de Arquitetura: Cliente/Servidor com Mestre e Escravos. Interface em IDL. Dynamic Invocation Interface. Exemplo invocação DII em Java
Exemplo de Arquitetura: Cliente/Servidor com Mestre e s Arquitetura Mestre- Speed-up / Cliente Mestre Prof João Paulo A Almeida (jpalmeida@infufesbr) Cliente 2009/01 - INF02799 Com alguns slides de Parallel
Ordenação e Pesquisa
Ordenação e Pesquisa Luís Lopes DCC-FCUP Estruturas de Dados Pesquisa de Informação A pesquisa eficiente de informação é extremamente relevante, seja: num catálogo indexado por uma relação de ordem, e.g.
GGI026 - Árvore balanceada
GGI06 - Árvore balanceada Marcelo K. Albertini 11 de Setembro de 013 /1 Trabalho 1 implementar programa para resolver o problema entregue programa deve funcionar conforme pedido na descrição 3 fazer apresentação
CURSO DE ESTRUTURA DE DADOS MÓDULO: ALGORITMOS DE ORDENAÇÃO E PESQUISA PROFESSORA: DANIELA ELOISE FLÔR COLABORADORA: MARIA CAROLINA SILA VANUCHI
CURSO DE ESTRUTURA DE DADOS MÓDULO: ALGORITMOS DE ORDENAÇÃO E PESQUISA PROFESSORA: DANIELA ELOISE FLÔR COLABORADORA: MARIA CAROLINA SILA VANUCHI O QUE SÃO ALGORITMOS DE ORDENAÇÃO? São algoritmos que organizam
INF 1010 Estruturas de Dados Avançadas. Indexação em Espaços Multidimensionais. 2012 DI, PUC-Rio Estruturas de Dados Avançadas 2012.
INF 1010 Estruturas de Dados Avançadas Indexação em Espaços Multidimensionais Tópicos Motivação Indexação de pontos em espaços multidimensionais Curvas de preenchimento Hash Particionado Grade Regular
Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão
MC3305 Algoritmos e Estruturas de Dados II Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão Prof. Jesús P. Mena-Chalco [email protected] 2Q-2015 1 Custo de um algoritmo
INF 1010 Estruturas de Dados Avançadas
11.2 INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 1 Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada
Vectores: Algoritmos de Ordenação. Algoritmos e Estruturas de Dados 2008/2009
Vectores: Algoritmos de Ordenação Algoritmos e Estruturas de Dados 2008/2009 Ordenação Problema (ordenação de vector) rearranjar os n elementos de um vector (v) por ordem crescente, ou melhor, por ordem
ALGORITMOS DE ORDENAÇÃO. Algoritmos de comparação-e-troca. Bubble Sort Merge Sort Quick Sort
ALGORITMOS DE ORDENAÇÃO ALGORITMOS DE ORDENAÇÃO Algoritmos de comparação-e-troca Bubble Sort Merge Sort Quick Sort 1 BUBBLE SORT Usa a estratégia de comparação-e-troca É constituído por várias fases Cada
2) Escreva um algoritmo que leia um conjunto de 10 notas, armazene-as em uma variável composta chamada NOTA e calcule e imprima a sua média.
1) Inicializar um vetor de inteiros com números de 0 a 99 2) Escreva um algoritmo que leia um conjunto de 10 notas, armazene-as em uma variável composta chamada NOTA e calcule e imprima a sua média 3)
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
Estrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática
Estrutura de Dados Algoritmos de Ordenação Prof. Othon M. N. Batista Mestre em Informática Roteiro Introdução Ordenação por Inserção Insertion Sort Ordenação por Seleção Selection Sort Ordenação por Bolha
Análise de programas imperativos
Análise de programas imperativos AMC 2011/12 ì Paulo Mateus Departamento de Matemática IST 2012 Objectivos ì Noção de invariante e variante de um ciclo ì Prova (informal) da correção de algoritmos imperativos
Métodos de Ordenação: Selection, Insertion, Bubble, Merge (Sort)
Métodos de Ordenação: Selection, Insertion, Bubble, Merge (Sort) Hebert Coelho e Nádia Félix Ordenação É a operação de rearranjar os dados em uma determinada ordem. Problema da ordenação - Definição formal
Árvores Parte 1. Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos
Árvores Parte 1 Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Árvores uma introdução As listas apresentadas na aula anterior formam um conjunto de TADs extremamente importante
MÉTODOS DE ORDENAÇÃO. Introdução à Programação SI2
MÉTODOS DE ORDENAÇÃO Introdução à Programação SI2 2 Conteúdo Conceitos básicos Classificação por troca Classificação por inserção Classificação por seleção 3 Conceitos Básicos Ordenar: processo de rearranjar
Quick Sort. Considerações Sobre Algoritmos de Ordenação. Estagiário PAE: Jesimar da S. Arantes Professor: Claudio Quick F. M.
Quick Sort Considerações Sobre Algoritmos de Ordenação Professor: Claudio F. M. Toledo 26 de Outubro de 2016 Professor: Claudio Quick F. M. Sort Toledo 26 de Outubro de 2016 1 / 14 Quicksort: Escolha do
ALGORITMOS DE ORDENAÇÃO
ALGORITMOS DE ORDENAÇÃO Prof. André Backes Conceitos básicos 2 Ordenação Ato de colocar um conjunto de dados em uma determinada ordem predefinida Fora de ordem 5, 2, 1, 3, 4 Ordenado 1, 2, 3, 4, 5 OU 5,
Árvores de Decisão Matemática Discreta
Bruno Duarte Eduardo Germano Isolino Ferreira Vagner Gon Árvores de Decisão Matemática Discreta 28/04/2011 Serra IFES Definição de Árvores de Decisão: Arvore de Decisão é uma árvore em que seus nós internos
Algoritmos de Ordenação em LISP
Algoritmos de Ordenação em LISP Léo Willian Kölln 8 de Agosto de 2006 Curso de Ciências da Computação Programação Funcional - INE5363 INE - Departamento de Informática e Estatística CTC - Centro Tecnológico
Bubble Sort. Tempo total O(n 2 )
Bubble Sort Considere uma seqüência de n elementos que se deseja ordenar. O método da bolha resolve esse problema através de várias passagens sobre a seqüência Não é um algoritmo eficiente, é estudado
ALGA - Eng.Civil - ISE - 2009/2010 - Matrizes 1. Matrizes
ALGA - Eng.Civil - ISE - 00/010 - Matrizes 1 Matrizes Introdução Se m e n são números naturais, chama-se matriz real de tipo m n (m vezes n ou m por n) a uma aplicação A : f1; ; :::; mg f1; ; :::; ng R:
Métodos de ordenação. Bubble sort:
Métodos de ordenação Bubble sort: O método de ordenação por bubble sort ou conhecido como bolha consiste em compara dados armazenados em um vetor de tamanho qualquer, comparando cada elemento de uma posição
Algoritmos de Pesquisa e Ordenação em Vectores
Algoritmos de Pesquisa e Ordenação em Vectores FEUP - MIEEC Programação 2-2008/2009 Pesquisa Sequencial Problema (pesquisa de valor em vector): Verificar se um valor existe no vector e, no caso de existir,
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Métodos de Ordenação - seleção e inserção - seleção e troca (bubble sort) - merge e quick sort - radix - hashing Prof. Rodrigo Rocha [email protected] http://www.bolinhabolinha.com
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
Arquivos Sequenciais. Estruturas de Dados II Vanessa Braganholo
Arquivos Sequenciais Estruturas de Dados II Vanessa Braganholo Arquivos Sequenciais } Pq arquivos sequenciais? Relembrando } Relembrando: uma tabela ou arquivo é um conjunto de registros que possuem a
Métodos de Classificação
Métodos de Classificação 261 Objetivos e Caracterizações O acesso a um conjunto de dados é facilitado se o mesmo está armazenado conforme uma certa ordem, baseada num critério conhecido. O objetivo básico
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
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos Aula 09 Algoritmos de Ordenação Edirlei Soares de Lima Ordenação Problema: Entrada: conjunto de itens a 1, a 2,..., a n ; Saída: conjunto de itens
Ordenação: QuickSort. Prof. Túlio Toffolo BCC202 Aula 15 Algoritmos e Estruturas de Dados I
Ordenação: QuickSort Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 15 Algoritmos e Estruturas de Dados I QuickSort Proposto por Hoare em 1960 e publicado em 1962. É o algoritmo de ordenação
Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet
Aula 17 Quick Sort Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno B. Boniati www.cafw.ufsm.br/~bruno Ordenação
Análise e Projeto de Algoritmos
Análise e Projeto de Algoritmos Prof. Eduardo Barrére www.ufjf.br/pgcc www.dcc.ufjf.br [email protected] www.barrere.ufjf.br Solução de recorrências Para analisar o consumo de tempo de um algoritmo
12 de Março de 2007 1. Aula 5
12 de Março de 2007 1 Multiplicação e divisão inteiras Aula 5 Estrutura desta aula Multiplicação básica Multiplicações melhoradas Multiplicação em complemento para 2 Algoritmo de Booth Divisão básica Ref:
Algoritmos e Estruturas de Dados II. Introdução
Algoritmos e Estruturas de Dados II Introdução Antonio Alfredo Ferreira Loureiro [email protected] http://www.dcc.ufmg.br/~loureiro UFMG/ICEx/DCC Algoritmos e Estruturas de Dados II 1 Algoritmos, estruturas
Ordenação de Vectores
4. Vectores: Algoritmos de Ordenação João Pascoal Faria (versão original) Ana Paula Rocha (versão 2004/2005) Luís Paulo Reis (versão 2005/2006) FEUP - MIEEC Prog 2-2006/2007 Ordenação de Vectores Problema
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO UNIVERSITÁRIO NORTE DO ESPÍRITO SANTO
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
Teoria dos Grafos Aula 9
Teoria dos Grafos Aula 9 Aula passada Grafos direcionados Busca em grafos direcionados Ordenação topológica Aula de hoje Grafos com pesos Dijkstra Implementação Fila de prioridades e Heap Dijkstra (o próprio)
Métodos de Ordenação Parte I
Estrutura de Dados II Métodos de Ordenação Parte I Prof a Márcio Bueno [email protected] / [email protected] Material baseado nos materiais da Prof a Ana Eliza e Prof. Robson Lins Rearranjar
Algoritmos de Ordenação
Algoritmos de Ordenação Introdução à Ciência da Computação Prof. Edison Ishikawa Objetivo Apresentar diferentes algoritmos de ordenação de dados Mostrar como analisar os algoritmos em termos de tempo de
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula 3
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula 3 1 Agenda Estrategias de Projeto Algoritmos Refinamentos Sucessivos Força Bruta Dividir e conquistar Bibliografia
Algoritmos de Ordenação. Profº Carlos Alberto T. Batista
Algoritmos de Ordenação Profº Carlos Alberto T. Batista E-mail: [email protected] [email protected] Por que ordenar os dados? Encontrar elementos em uma lista torna-se algo simples e
Teoria de Jogos. Algoritmo Minimax e Alfa-Beta AED - 2002
Teoria de Jogos Algoritmo Minimax e Alfa-Beta AED - 2002 Conceptualização do Problema Jogar pode ser visto como uma generalização do problema de procura em espaço de estados, em que existem agentes hostis
ESTRUTURAS DE DADOS E ALGORITMOS ALGORITMOS DE ORDENAÇÃO POR COMPARAÇÃO - II
ESTRUTURAS DE DADOS E ALGORITMOS ALGORITMOS DE ORDENAÇÃO POR COMPARAÇÃO - II Adalberto Cajueiro Departamento de Sistemas e Computação Universidade Federal de Campina Grande ALGORITMOS VISTOS ANTERIORMENTE
Matemática Aplicada às Ciências Sociais- 11º ano
Matemática Aplicada às Ciências Sociais- 11º ano Professor: Pedro Nóia Livro adotado: Matemática Aplicada às Ciências Sociais- 11º ano Elisabete Longo e Isabel Branco Texto Editores Sugestão: Adquira também
Algoritmos de Ordenação
Algoritmos de Ordenação Leandro Tonietto Unisinos [email protected] http://professor.unisinos.br/ltonietto Atualizado em 7-Jun-12 http://professor.unisinos.br/ltonietto/inf/lb2/sort.pdf ! Objetivos!
AGRUPAMENTO DE ESCOLAS DR. VIEIRA DE CARVALHO
AGRUPAMENTO DE ESCOLAS DR. VIEIRA DE CARVALHO DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS MATEMÁTICA 8.º ANO PLANIFICAÇÃO GLOBAL 1. Representação, comparação e ordenação. Representar números racionais
Capítulo 14. Ordenação e pesquisa. Bubblesort. Alguns algoritmos de ordenação e pesquisa Medição do tempo de execução de um programa
Capítulo Ordenação e pesquisa Alguns algoritmos de ordenação e pesquisa Medição do tempo de execução de um programa Bubblesort Identifica os pares de elementos contíguos que não estão na ordem correcta
BCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 12: Ordenação: Bubble, Selection e Insertion Sort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes
QuickSort CI/2015. Análise e Projeto de Algoritmos. - Prof. Lucídio A. F. Cabral
QuickSort 1 Quicksort A[p q] A[q+1 r] Ordena um vetor A[p r] Divisão Particiona um vetor A em 2 subvetores A[p..q] e A[q+1..r], de tal modo que cada elemento de A[p..q] seja menor ou igual a cada elemento
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
Métodos Formais. Agenda. Relações Binárias Relações e Banco de Dados Operações nas Relações Resumo Relações Funções. Relações e Funções
Métodos Formais Relações e Funções por Mauro Silva Agenda Relações Binárias Relações e Banco de Dados Operações nas Relações Resumo Relações Funções MF - Relações e Funções 2 1 Relações Binárias Definição
Diagrama de Seqüência
Diagrama de Seqüência Viviane Torres da Silva [email protected] http://www.ic.uff.br/~viviane.silva/2010.1/es1 O que é? Diagrama criado para modelagem da interação entre objetos Detalha como objetos
Estruturas de Dados. Árvores B. - - Estrutura e peculiaridades -- Algoritmos de inserção, pesquisa e deleção
Estruturas de Dados Árvores B - - Estrutura e peculiaridades -- Algoritmos de inserção, pesquisa e deleção Definição Árvores B são árvores de pesquisa balanceadas especialmente projetadas para a pesquisa
OBSERVAÇÕES: EXERCÍCIOS
OBSERVAÇÕES: 1. Esta lista de exercícios poderá ser resolvida individualmente ou em grupos de 2 pessoas. 2. A lista possui 25 exercícios, destes você deve responder os 5 primeiros exercícios e os outros
Ciclo com Contador : instrução for. for de variável := expressão to. expressão do instrução
Métodos de Programação I 2. 27 Ciclo com Contador : instrução for identificador downto for de variável := expressão to expressão do instrução UMA INSTRUÇÃO (SIMPLES OU COMPOSTA) Neste caso o ciclo é repetido
Ordenação. Insertion Sort
Sumário por trocas de vizinhos. Análise. Limites teóricos Insertion sort. Shellsort recursiva: Mergesort. Análise. Com heap binário: Heapsort. Análise. Divisão e conquista: Quicksort. Análise. Limites
Estruturas de Dados Aula 9: Listas (parte 1) 05/04/2011
Estruturas de Dados Aula 9: Listas (parte 1) 05/04/2011 Fontes Bibliográficas Livros: Projeto de Algoritmos (Nivio Ziviani): Capítulo 3; Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo
INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1
INF1007: Programação 2 6 Ordenação de Vetores 01/10/2015 (c) Dept. Informática - PUC-Rio 1 Tópicos Introdução Ordenação bolha (bubble sort) Ordenação por seleção (selection sort) 01/10/2015 (c) Dept. Informática
Complexidade de Algoritmos
MAC 5710 - Estruturas de Dados - 2008 Objetivo de estudar complexidade de algoritmos Por que analisar a complexidade dos algoritmos? A preocupação com a complexidade de algoritmos é fundamental para projetar
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
Classificação por Intercalação
458 Classificação por Intercalação Este é um bom exemplo de abordagem top down, ou de aplicação do princípio da divisão e conquista, associado à recursividade. Ao se observar o andamento do processo sobre
void subdivide (LISTA_ENC *pl, LISTA_ENC *pl1, LISTA_ENC *pl2) { int cont, k=1; for (cont=tam(*pl)/2;cont;cont--) {
void subdivide (LISTA_ENC *pl, LISTA_ENC *pl1, LISTA_ENC *pl2) { int cont, k=1; for (cont=tam(*pl)/2;cont;cont--) { } ins(pl1,recup(*pl,1),k++); ret(pl,1); } for (k=1, cont=tam(*pl);cont;cont--) { ins(pl2,recup(*pl,1),k++);
Algoritmos e Estruturas de Dados LEE 2013/2014. popular devido à facilidade de implementação e eficiência
Algoritmos e Estruturas de Dados LEE 2013/2014 Algoritmos de Ordenação Parte II Quicksort [1] Provavelmente o algoritmo mais usado inventado nos anos 60 muito estudado e analisado desempenho bem conhecido
Algoritmos e Estruturas de Dados. Décima sexta aula: Quicksort
Algoritmos e Estruturas de Dados Décima sexta aula: Quicksort Nesta aula vamos Estudar o quicksort. Considerar algumas variantes: Quicksort geral, parametrizando a função de comparação. Quicksort com partição
Ordenação. Prof. Túlio A. M. Toffolo Prof. Marco Antonio M. Carvalho BCC402 Aula 04 Algoritmos e Programação Avançada
Ordenação Prof. Túlio A. M. Toffolo Prof. Marco Antonio M. Carvalho http://www.toffolo.com.br BCC402 Aula 04 Algoritmos e Programação Avançada Aplicações Como testar se todos os elementos de um conjunto
Polos Olímpicos de Treinamento. Aula 1. Curso de Teoria dos Números - Nível 3. Divisibilidade 1. Carlos Gustavo Moreira e Samuel Barbosa Feitosa
Polos Olímpicos de Treinamento Curso de Teoria dos Números - Nível 3 Carlos Gustavo Moreira e Samuel Barbosa Aula 1 Divisibilidade 1 Teorema 1. (Algoritmo da Divisão) Para quaisquer inteiros positivos
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
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
Algoritmos de ordenação em forma paralela.
ISUTIC 2017 Algoritmos de ordenação em forma paralela. Docente: MSc. Angel Alberto Vazquez Sánchez Bibliografía A. Grama, Introduction to parallel computing. Pearson Education, 2003. I. Foster, Designing
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
Programação Dinâmica. Aplicação directa - Fibonacci
Programação Dinâmica Divisão e conquista: problema é partido em subproblemas que se resolvem separadamente; solução obtida por combinação das soluções Programação dinâmica: resolvem-se os problemas de
Notas de Aula Disciplina Matemática Tópico 08 Licenciatura em Matemática Osasco -2010
1. Função Eponencial Dado um número rela a > 0, e a 1, então chamamos de função eponencial de base a, a função f: R R tal que: f = a Por eemplo: f = 5 g = 1 2 = 3 Gráfico de uma função eponencial Para
Algoritmos de Ordenação
Algoritmos de Ordenaçã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] 10/2008 Material baseado em
Determinantes. Matemática Prof. Mauricio José
Determinantes Matemática Prof. Mauricio José Determinantes Definição e Conceito Matriz de ordem 1 Dizemos que um determinante é um resultado (numérico) de operações que são realizadas em uma matriz quadrada.
CIC 110 Análise e Projeto de Algoritmos I
CIC 110 Análise e Projeto de Algoritmos I Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá sort AULA 02 Ordenação A classificação é um problema de design de algoritmo fundamental.
Álgebra Relacional. Banco de Dados. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Profa. Dra. Cristina Dutra de Aguiar Ciferri
Álgebra Relacional Banco de Dados Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta procedural usuários especificam os dados necessários e como obtê-los
Bases de Dados BDDAD. Álgebra Relacional. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/33
BDDAD Bases de Dados Álgebra Relacional Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/33 1. Introdução 2. Expressões Algébricas 3. Álgebra Relacional Implementada em SGBD 4. Operações Algébricas Remover Parte
