ordenação de dados_incompleto2

10
Aula 03 – Ordenação de Dados Ementa Análise da complexidade de algoritmos iterativos e recursivos; Algoritmos de ordenação: bubble- sort, insertion-sort, merge-sort, quick-sort e heap-sort; Algoritmos de Ordenação Linear: bucket-sort e counting-sort. Algoritmos Gulosos; Programação Dinâmica; Grafos: representação, busca em profundidade e largura, ordenação topológica, árvores de cobertura mínima, algoritmos de menor caminho e fluxo máximo. Maratona www.fiponline.edu.br PROF. Msc. BERG OLIVEIRA – [email protected] 2014.2

Upload: berg-oliveira

Post on 18-Dec-2015

212 views

Category:

Documents


0 download

DESCRIPTION

MARATONA_Atividade1_29Agosto2014

TRANSCRIPT

  • Aula 03 Ordenao de Dados

    Ementa Anlise da complexidade

    de algoritmos iterativos e recursivos;

    Algoritmos de ordenao: bubble-

    sort, insertion-sort, merge-sort,

    quick-sort e heap-sort; Algoritmos

    de Ordenao Linear: bucket-sort e

    counting-sort. Algoritmos Gulosos;

    Programao Dinmica; Grafos:

    representao, busca em

    profundidade e largura, ordenao

    topolgica, rvores de cobertura

    mnima, algoritmos de menor

    caminho e fluxo mximo.

    Maratonawww.fiponline.edu.br PROF. Msc. BERG OLIVEIRA [email protected] 2014.2

  • Porqu ordenar dados?

    Busca e Manipulao de Dados funcionamento bsico de todo sistema computacional. um dos processos mais comuns.

    Origens diversas dos dados: Memria RAM, Discos SGBDs, Arquivos Vetores, Arrays, Listas, Filas, Pilhas, revores

    Dados desordenados requerem mais processamento.

    [email protected]

  • Porqu ordenar dados?

    Exemplo: A ordenao feita pelas Chaves (elementos internos) Vetor Ordenado

    Vetor desordenado

    Qual a melhor probabilidade de encontrar um dado? Existem vrias formas de busca: ex.: busca linear, busca

    binria.

    [email protected]

  • Ordenao

    Tempo de execuo de um algoritmo de execuo. Depende da entrada dos dados:

    Se os dados estiverem ordenados, ou parcialmente, ser mais rpido.

    Na escolha de um algoritmo de ordenao, devemos avaliar a escolha baseando-se no tamanho da entrada Dados menores so mais rpidos e fceis de ordenar.

    Complexidade do pior caso: Limite do pior caso para o tempo de execuo da ordenao. Notao Assinttica Big Oh Algoritmo mais eficiente: tempo de execuo, no pior caso,

    tem crescimento menor.

    [email protected]

  • Lembrando de Notao Assinttica

    [email protected]

  • Mtodo 1: Pesquisa Binria

    Algoritmo simples de ordenao: Converte o vetor a ser ordenado em uma rvore

    A raiz pode ser qualquer elemento do vetor.

    Geralmente se usa o primeiro ndice. Se for outro, ele no poder ser usado.

    Navega no vetor, e monta os elementos numa rvore binria.

    Navega na rvore em ordem ERD

    Reescreve o vetor

    [email protected]

  • Mtodo 1: Pesquisa Binria

    Anlise Usa estrutura esttica e dinmica de memrias Pior caso: T(n) = O(n2)

    Todos os n vetores so visitados para montar a rvores.

    Todos os n vetores so (novamente) visitados para montar o arranjo.

    Quais seriam o tempos de execuo para Pior caso e Melhor caso?

    Indicado para pequenos arranjos.

    [email protected]

  • Mtodo 2:Bubblesort

    Ordenao por troca Tambm conhecido como Mtodo Bolha

    As bolhas mais leves so trazidas para o incio, e as mais pesadas para o fim.

    Em cada passagem, compara-se as chaves adjacentes As chaves adjacentes = chaves vizinhas

    As comparaes so feitas entre vizinhos, a cada passagem.

    Se os elementos estiverem fora de ordem, trocam de posio. Os elementos menores (bolhas mais leves) vo sendo trazidos

    para o incio.

    O procedimento pra quando no houver mais troca.

    [email protected]

  • Mtodo 2:Bubblesort

    Funcionamento: No quadro

    Exemplo: https://www.youtube.com/watch?v=lyZQPjUT5B4

    Projeto da Sapientia University (http://www.sapientia.ro/en)

    http://www.youtube.com/watch?v=8Kp-8OGwphY https://study.cs50.net/bubble_sort

    Projeto do Harvard College (http://cs50.tv/2014/fall/)

    [email protected]

  • Mtodo 2:Bubblesort

    AnlisePropriedades

    Complexidade de pior caso: T(n) = O(n2)A lista ordenada no local (in-place). Simples, estvel, mas lento.

    Indicao:Arranjos muito pequenos e Demonstrao didtica

    [email protected]