Sumários

T11 - Algoritmos de Ordenação IV

28 março 2019, 15:00 Carlos Filipe Gomes Bispo

Algoritmos de Ordenação


  • Algoritmo “quicksort”
    • Melhoramentos na versão não recursiva
    • Mecanismos de partição alternativos: aleatórios, mediana de três
    • Estudo empírico de complexidade
    • Estratégia de melhoramento em presença de chaves duplicadas
  • O problema de selecção e sua relação com o problema da ordenação
  • Junção de tabelas como alternativa à partição de tabelas
    • Operação de junção –“merge”
    • Código e exemplo de aplicação
  • Algoritmo “mergesort”
    • Outra instância de um algoritmo que utiliza a estratégia “divide and conquer”
    • Exemplo de aplicação e implementação
    • Análise de eficiência e outras propriedades
    • Evolução gráfica


Laboratorio 3 - Avaliação Individual

27 março 2019, 16:30 António Brandão Leal

Foi realizado um teste individual durante a aula de laboratório, com três exercícios práticos (código dado para analisar ou em computador para completar e correr):

(i) Determinação da expressão de recorrência para a complexidade de uma função em escrita em C.

(ii) Leitura e processamento de dados para uma matriz de inteiros, com alocação, libertação de memória.

(iii) Implementação e análise de casos específicos para o algoritmo de 'Bucket sort'.


Laboratorio 3 - Avaliação Individual

27 março 2019, 14:00 António Brandão Leal

Foi realizado um teste individual durante a aula de laboratório, com três exercícios práticos (código dado para analisar ou em computador para completar e correr):

(i) Determinação da expressão de recorrência para a complexidade de uma função em escrita em C.

(ii) Leitura e processamento de dados para uma matriz de inteiros, com alocação, libertação de memória.

(iii) Implementação e análise de casos específicos para o algoritmo de 'Bucket sort'.


T10 - Algoritmos de Ordenação III

26 março 2019, 17:00 Carlos Filipe Gomes Bispo

Algoritmos de Ordenação


  • Algoritmo “quicksort”
    • Ideia chave + Motivação
    • Algoritmo que recorre à divisão em instâncias menores –“divide and conquer”
    • Código
    • Exemplo de aplicação
  • Descrição detalhada do mecanismo de partição
  • Análise de eficiência
    • Análise do algoritmo “quicksort”
    • Descrição gráfica da evolução
  • Discussão relativa à memória utilizada na versão recursiva
  • Alternativa de implementação por pilha e suas vantagens na perspectiva da memória utilizada
  • Código para quicksort em versão não recursiva


Laboratorio 3 - Avaliação Individual

26 março 2019, 15:00 António Brandão Leal

Foi realizado um teste individual durante a aula de laboratório, com três exercícios práticos (código dado para analisar ou em computador para completar e correr):

(i) Determinação da expressão de recorrência para a complexidade de uma função em escrita em C.

(ii) Leitura e processamento de dados para uma matriz de inteiros, com alocação, libertação de memória.

(iii) Implementação e análise de casos específicos para o algoritmo de 'Bucket sort'.