Programa - Estruturas de dados e Algoritmos para Engenharia de Computação Professor Renato Cardoso Mesquita - Departamento de Engenharia Elétrica - UFMG [email protected] - Sala 242 - PCA 1. Introdução à Análise de Algoritmos 1.1. Algoritmos: caracterização. 1.2. Análise de algoritmos. 1.3. Ordem de complexidade de algoritmos. 2. Estruturas de Dados 2.1. Conceito. 2.2. Estruturas de dados elementares. 2.3. Estruturas de dados compostas. 2.4. Tipos abstratos de dados. 2.5. Recursão e Árvores. 3. Ordenação 3.1. Métodos simples de ordenação. 3.2. Quicksort. 3.3. Mergesort. 3.4. Heapsort. 3.5. Radix Sorting. 3.6. Métodos de ordenação de uso específico. 4. Busca 4.1. Tabelas de símbolos e árvores de busca binárias. 4.2. Árvores balanceadas. 4.3. Hashing. 4.4. Radix Search. 4.5. Busca externa e B-Trees. 5. Grafos 5.1. Propriedades e tipos de grafos. 5.2. Busca em grafos. 5.3. Grafos orientados (digrafos). 5.4. Árvores geradoras mínimas 5.5. Caminho mais curto 5.6. Fluxo em redes BIBLIOGRAFIA: rd R. Sedgewick , Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching, (3 Edition) Addison-Wesley – 1998. rd R. Sedgewick, Algorithms in C++, Part 5: Graph Algorithms, (3 Edition) Addison-Wesley - 2001. T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms (2nd Edition), MIT Press - 2001. D. E. Knuth, Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition), Addison-Wesley 1997 D. E. Knuth, Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition), Addison-Wesley - 1998 B. Stroustrup, The C++ Programming Language (3rd Edition), Addison-Wesley - 2000 CRITÉRIOS DE AVALIAÇÃO: 2 Provas escritas 50 pontos Listas de exercícios e trabalhos práticos 50 pontos Total: 100 pontos. 1