MAC0122 Princípios de Desenvolvimento de Algoritmos
por Paulo Feofiloff

MAC0122 é uma segunda disciplina de programação de computadores. Ela pressupõe uma boa prática de programação, particularmente em linguagem C; alguns alunos terão adquirido essa prática em MAC0110 (Introdução à Computação).

MAC0122 não é um curso de linguagem C. A linguagem C é apenas uma ferramenta. Apesar disso, muitos alunos vão aprender muito C, por conta própria, ao longo do semestre.

MAC0122 estuda algoritmos para alguns problemas computacionais básicos. Isso serve de motivação para introduzir vários conceitos e idéias importantes:

  • estruturas de dados
  • recursão
  • eficiência de algoritmos
  • prova da correção de algoritmos
  • invariantes de algoritmos iterativos
  • bibliotecas de funções
  • documentação de funções
  • leiaute de programas

Principais tópicos de MAC0122:

  • Leiaute e documentação de programas
  • Números inteiros, caracteres
  • Strings
  • Alocação dinâmica de memória
  • Ponteiros
  • Listas encadeadas
  • Recursão e funções recursivas
  • Busca binária
  • Ordenação de seqüências
  • Pilhas, filas