| Professor
  Adriano Sarmento Monitores: | 
| Objetivos: | Ensinar conceitos mais
  avançados de estruturas de dados, utilizando a linguagem C como apoio.
  Além de serem abordadas estruturas como listas, pilhas,filas e
  árvores, algumas técnicas de manipulação destas
  estruturas como ordenação e busca são discutidas. | 
Cronograma
| 10/03,  sala de
  aula  | Discutir conceitos básicos de
  computação, ciclo de desenvolvimento de
  programas,características da linguagem C, estruturas da linguagem C,
  tipos de dados, conceito de declaração,variáveis locais
  e globais (veja as transparências).  Discutir
  postura durante o curso: importância da disciplina, cronograma pessoal
  e carga de estudo necessária  Comprar livro texto do curso. Pode baixar
  alguma IDE para programar em C. Alguns links: DevC++ : http://www.bloodshed.net/dev/devcpp.html CodeBlocks: http://www.codeblocks.org/downloads | 
| 12/03, sala de aula  | Discutir operadores de
  atribuição, aritméticos, relacionais, lógicos,
  especiais da linguagem C. Discutir conceito de expressão e
  avaliação do mesmo em C. Explorar algumas funções
  de entrada e saída. (veja as transparências)  | 
| 17/03, sala de aula  | Discutir comandos de controle em C.
  Discutir estruturas de repetição, condicionais e de desvio
  (veja as transparências) | 
| 19/03, Laboratório
   | Aula prática. Apresentando o ambiente Dev C++. Escrever alguns programas utilizando os
  conceitos básicos vistos em C.  (veja exercício) | 
| 24/03, sala de aula  | Discutir funções e
  ponteiros. Discutir estrutura de funções, pilha de
  execução, ponteiros, passagem de parâmetro por valor
  versus passagem de parâmetro por referência, macros. (veja as transparências) Fazer os exercícios
  com data de entrega para 31/03/2010. Os alunos cujos nomes iniciam com as
  letras compreendidas entre A– H devem mandar via email a
  resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com). Os alunos cujos nomes iniciam com as
  letras compreendidas entre I – Z 
  devem mandar via email para o Monitor David (dwilber_10@hotmail.com) | 
| 26/03, Laboratório | Escrever alguns programas utilizando
  funções e ponteiros.  (veja o exercício) | 
| 31/03, sala de aula  | Discutir uso de vetores e
  alocação dinâmica de vetores . Discutir matrizes
  dinâmicas. Discutir representação de matrizes dinâmicas,
  alocação estática versus alocação
  dinâmica. (veja as transparências) Fazer os exercícios
  com data de entrega para 09/04/2010. Os alunos cujos nomes iniciam com as
  letras compreendidas entre A– H devem mandar via email a
  resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com). Os alunos cujos nomes iniciam com as
  letras compreendidas entre I – Z 
  devem mandar via email para o Monitor David (dwilber_10@hotmail.com) | 
| 02/04 | NÃO
  HAVERÁ AULA – PAIXÃO DE CRISTO | 
| 07/04 | NÃO
  HAVERÁ AULA – PROVAS DA ÁREA II | 
| 09/04 |        
  Aula prática. Exercícios sobre Matrizes.  (veja o exercício)  | 
| 14/04, sala de aula | Discutir representação
  de cadeia de caracteres, manipulação de cadeia de caracteres e
  principais funções.  (veja as transparências) | 
| 16/04, sala de aula | Discutir
  tipos estruturados. Discutir importância, sintaxe, 
  manipulação de tipos estruturados, passagem de tipos
  estruturados para funções e tipos enumerados. (veja as transparências) Fazer os exercícios
  com data de entrega para 23/04/2010. Os alunos cujos nomes iniciam com as
  letras compreendidas entre A– H devem mandar via email a
  resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com). Os alunos cujos nomes iniciam com as
  letras compreendidas entre I – Z 
  devem mandar via email para o Monitor David (dwilber_10@hotmail.com) | 
| 21/04 | NÃO HAVERÁ AULA – TIRADENTES | 
| 23/04, sala de aula | Discutir
  conceito de tipos abstratos de dados. Discutir vantagens, apresentar
  exemplos, e implementar um TAD. (veja as transparências) | 
| 28/04, sala de aula  | Discutir
  conceito de listas encadeadas. Discutir representação de listas
  simplesmente encadeadas, manipulação, operações
  de inclusão, remoção e busca. (veja as transparências) . Veja alguns exemplos | 
| 30/04, Laboratório
  NI-5 | Aula prática.
  Exercícios sobre lista simplesmente encadeadas. (veja o exercício) | 
| 05/05, sala de aula | Discutir outros tipos de listas encadeadas.
  Apresentar listas duplamente encadeadas, circulares, duplamente circulares e
  listas de tipos estruturados. Mostrar a manipulação e
  operações destes tipos de lista (veja as transparências) Veja alguns exemplos Fazer o exercício
  com data de entrega para 14/05/2010. Os alunos cujos nomes iniciam com as
  letras compreendidas entre A– H devem mandar via email a
  resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com). Os alunos cujos nomes iniciam com as
  letras compreendidas entre I – Z 
  devem mandar via email para o Monitor David (dwilber_10@hotmail.com) | 
| 07/05, Laboratório
  NI-5 | Aula
  prática. Exercícios sobre lista duplamente encadeadas. (veja o exercício) | 
| 12/05, sala de aula | Discutir arquivos em C. Discutir
  diferenças entre arquivos texto e binários.
  Apresentação das APIs de
  manipulação de arquivos em C (veja as transparências). | 
| 14/05, sala de
  aula | Aula de
  revisão (veja o exercício) | 
| 19/05 | NÃO HAVERÁ AULA – PROVAS AREA
  II | 
| 20/05, sala de aula 123 13:00-15:00 | AULA EXTRA DE EXERCÍCIOS | 
| 21/05, sala de aula | 1º Exercício escolar | 
| 26/05, sala de aula | Discutir conceitos de Pilha. Explorar
  diferentes implementações, operações e exemplos
  de aplicações (veja as transparências). | 
| 28/05, Laboratório
  NI-5 | Aula prática.
  Exercícios sobre pilha.  (veja o exercício) | 
| 02/06, Laboratório
   | Discutir conceitos de Fila. Explorar
  diferentes implementações, operações e exemplos
  de aplicações (veja as transparências). Fazer os exercícios
  com data de entrega para 09/06/2010 e enviar para
  o respectivo monitor.. | 
| 04/06,  | NÃO HAVERÁ AULA Aula
  prática será explicada posteriormente. De qualquer forma, tente
  fazer em casa.  Exercícios
  sobre fila (veja o exercício). | 
| 09/06, sala de aula | Discutir conceitos de
  árvores. Mostrar diferentes tipos de árvores e explorar
  implementação e operações em árvores
  binárias (veja as transparências). Fazer o exercício
  com data de entrega para 16/06/2010 e enviar
  para o respectivo monitor. | 
| 11/06, Laboratório  | Aula
  prática. Exercícios sobre árvores binárias (veja
  o exercício)  Distribuição
  da especificação
  do projeto. | 
| 16/06, sala de aula  | Explorar árvores com
  número variável de filhos. Discutir diferentes
  estratégias de implementação. Raciocínio sobre
  árvores com número variável de filhos, utilizando
  topologia binária (veja as transparências) Fazer o exercício
  com data de entrega para 23/06/2010 e enviar
  para o respectivo monitor. | 
| 18/06, Laboratório | Aula
  prática. Exercícios sobre árvores com número
  variável de filhos (veja o exercício). 
   | 
| 23/06 | NÃO
  HAVERÁ AULA | 
| 25/06 | NÃO
  HAVERÁ AULA | 
| 30/06 | NÃO
  HAVERÁ AULA – PROVAS AREA II | 
| 02/07 | NÃO
  HAVERÁ AULA | 
| 07/07, sala de aula |  Aula de Revisão (veja o exercício).
   | 
| 09/07, sala de aula | 2° Exercício Escolar ATENÇÃO: Quem tiver
  prova de Álgebra linear de 14:00,
  poderá começar a fazer a prova mais cedo (12:00) | 
| 14/07, Laboratório
   | Apresentação de projeto | 
| 15/07, sala de aula, 14:00 | 2ª Chamada (Para quem faltou a
  uma das provas) ATENÇÃO: Começa
  as 14:00 | 
| 21/07, sala de aula | Exercício
  Final | 
| Waldemar Celes |