MC202 - Estruturas de Dados
Instituto de Computação
Universidade Estadual de Campinas
1º semestre de 2011
Turma D
Professor: Hélio Pedrini
Monitor: Maikon Cismoski dos Santos e Davi Kooji Uezono
Horários
Terça: 21:00 às 23:00 hs (sala LM03)
Quinta: 19:00 às 21:00 hs (sala CB05)
Sexta: 21:00 às 23:00 hs (sala CB01)
Ementa
Estruturas básicas para representação de informações: listas,
árvores, grafos e suas generalizações. Algoritmos para construção,
consulta e manipulação de tais estruturas. Desenvolvimento,
implementação e testes de programas usando tais estruturas
em aplicações específicas.
Programa
- - Tipos Abstratos de Dados
- - Listas Ligadas Simples
- - Pilhas e Filas (conceitos e aplicações)
- - Listas Duplamente Ligadas
- - Listas Circulares
- - Recursão
- - Fila de Prioridade
- - Árvores Binárias (representações, percursos, aplicações)
- - Árvores Binárias de Busca (operações)
- - Árvore Balanceadas
- - Árvores Gerais
- - Listas Generalizadas
- - Métodos de Ordenação
- - Funções de Espalhamento (conceitos e aplicações)
- - Grafos (conceitos, representações, aplicações)
- - Percurso em Grafos (largura e profundidade)
Critérios de Avaliação
- - Provas (70% da nota)
| Prova 1 | : 28 de abril de 2011 |
| Prova 2 | : 28 de junho de 2011 |
| Exame | : 14 de julho de 2011 |
- - Trabalhos (30% da nota)
Média das provas: MProvas = (4*Prova1 + 6*Prova2) / 10
Média dos trabalhos: MTrabalhos = média aritmética de todos os trabalhos
Média parcial:
- M = (7*MProvas + 3*MTrabalhos) / 10
- MParcial = M, se MProvas >= 5.0 e MTrabalhos >= 4.5
- MParcial = min(M, 4.9), se MProvas < 5.0 ou MTrabalhos < 4.5
Exame: Alunos com MParcial < 5.0
Média final:
- se MParcial >= 5.0 então MFinal = MParcial
- se MParcial < 5.0 então MFinal = (Exame + MParcial) / 2
Observação: qualquer ocorrência de fraude nas provas ou nos trabalhos práticos resultará em média final igual a zero para todos os envolvidos.
Bibliografia
- Básica
- A.M. Tenenbaum, Y. Langsam, M.J. Augenstein. Data Structures Using C. Prentice Hall, Upper Saddle River, NJ, 1990 (Tradução: Estruturas de Dados Usando C. Makron Books do Brasil Editora Ltda, São Paulo, SP, 1995).
- N. Ziviani. Projeto de Algoritmos com Implementações em Pascal e C. Livraria Pioneira Editora, São Paulo, SP, 1994.
- J.L. Szwarcfiter, L. Markenzon. Estruturas de Dados e seus Algoritmos. LTC-Livros Técnicos e Científicos, Rio de Janeiro, RJ, 1994.
- B.W. Kernighan, D.M. Ritchie. The C Programming Language. Prentice-Hall, Englewood Cliffs New Jersey, 1978 (Tradução: C - A Linguagem de Programação. Editora Campus, 1986).
- E. Horowitz, S. Sahni, S. Anderson-Freed. Fundamentals of Data Structures in C. Computer Science Press, 1993.
- Complementar
- T.H. Cormen, C.E. Leiserson, R.L. Rivest. Introduction to Algorithms. MIT Press, Cambridge, Massachusetts, 1996 (Tradução: Algoritmos: Teoria e Prática. Editora Campus, 2002).
- R. Sedgewick. Algorithms. Addison-Wesley, Reading, Massachusetts, 1983.
- A.V. Aho, J.E. Hopcroft, J.D. Ullman. Data Structures and Algorithms. Addison-Wesley, Reading, Massachusetts, 1983.
- P.A.S. Veloso, C.S. Santos, P.A. Azeredo, A.L. Furtado. Estruturas de Dados. Editora Campus, Rio de Janeiro, RJ, 1986.
- N. Wirth. Algorithms and Data Structures. Prentice-Hall, 1986 (Tradução: Algoritmos e Estruturas de Dados. Prentice-Hall do Brasil Ltda, 1989).
Notas e Frequências