Sumários

Laboratório de Avaliação Individual

24 outubro 2016, 09:00 Paulo Flores

Foi realizado um teste individual durante a aula de laboratório. Três exercícios: (i) Algoritmo de Ordenação, (ii) alocação, libertação de memória e procura em matriz (iii) o problema de implementação de vectores dinâmicos (inserção, leitura e procura) e complexidade.


Aula prática #03

21 outubro 2016, 12:00 Margarida Silveira

Análise de complexidade de código

  • Contabilização de instruções básicas
  • Exercícios com notação assimptótica
  • Recorrências para complexidade temporal
  • Recorrências para complexidade de memória
  • Exercícios de aplicação do Master Theorem


Aula prática #03

21 outubro 2016, 09:30 Margarida Silveira

Análise de complexidade de código

  • Contabilização de instruções básicas
  • Exercícios com notação assimptótica
  • Recorrências para complexidade temporal
  • Recorrências para complexidade de memória
  • Exercícios de aplicação do Master Theorem


T10 - Algoritmos de Ordenação II

20 outubro 2016, 11:30 Carlos Filipe Gomes Bispo

Algoritmos de Ordenação

Bubble sort”
  • Descrição do algoritmo e análise de funcionamento
  • Exemplo de aplicação e análise de eficiência
Comparação dos três algoritmos elementares
  • Em número de comparações e trocas
  • Na evolução da tabela durante a execução – exemplo gráfico
“Shellsort”
  • Variante de aceleração do “Insertion sort”
  • Descrição e implementação: sequências de ordenação
  • Exemplo de aplicação e discussão da eficiência do algoritmo
  • Exemplo de execução e análise comparativa


T10 -Algoritmos de Ordenação II

20 outubro 2016, 10:00 Carlos Filipe Gomes Bispo

Algoritmos de Ordenação

“Shellsort”
  • Variante de aceleração do “Insertion sort”
  • Descrição e implementação: sequências de ordenação
  • Exemplo de aplicação e discussão da eficiência do algoritmo
  • Exemplo de execução e análise comparativa
Ordenação de outros tipos de dados
  • Implementações estudadas até aqui assumiam ordenação de inteiros
  • Definição da interface apropriada
  • Protótipos de funções elementares e definição dos dados
Para evitar mover grandes quantidades de dados
  • Ordenação por índices
  • Ordenação por ponteiros
  • Ordenação em listas ligadas
  • Referência às alterações a introduzir nos algoritmos analisados
    • Ao nível dos dados de entrada
    • Ao nível da interface