Ministério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Campus Curitiba PLANO DE ENSINO CURSO BACHARELADO EM SISTEMAS DE INFORMAÇÃO MATRIZ 597 FUNDAMENTAÇÃO Resolução nº 82/08-COGEP de 12 de setembro de 2008 LEGAL DISCIPLINA/UNIDADE CURRICULAR CÓDIGO PERÍODO IF63C ESTRUTURA DE DADOS I 3º CARGA HORÁRIA horas) AT AP Total 15h 30h 45h AT: Atividades Teóricas, AP: Atividades Práticas. PRÉ-REQUISITO EQUIVALÊNCIA IF62C – Fundamentos de Programação 2 Não há OBJETIVOS Proporcionar aos alunos conhecimentos teóricos e práticos em programação, envolvendo o estudo de conceitos fundamentais de algoritmos e estruturas de dados. Ao final da disciplina o aluno deverá dominar as principais estruturas de dados existentes da computação. EMENTA Cadeias e Processamento de Cadeias. Estruturas de Dados Lineares e suas Generalizações: Listas Ordenadas, Listas Encadeadas, Pilhas e Filas. Árvores e suas Generalizações: Árvores Binárias, Árvores de Busca e Árvores Balanceadas. Tabelas Hash. Algoritmos para Pesquisa e Ordenação. CONTEÚDO PROGRAMÁTICO ITEM 1 2 EMENTA Cadeias e Processamento de Cadeias Estruturas de Dados Lineares e suas Generalizações Árvores e suas Generalizações 3 4 Tabelas Hash 5 Algoritmos para Pesquisa e Ordenação CONTEÚDO Casamento de cadeias: casamento exato e casamento aproximado. Compressão de cadeias. Listas Lineares, Listas simplesmente e duplamente encadeadas, listas circulares, Listas auto-organizadas. Pilhas, filas, deques. Listas Ordenadas. Percurso em árvores, árvores M-múltiplas de busca, Árvores binárias de busca, operações em árvores binárias de busca. Árvores binárias. Balanceamento de árvores. Árvores AVL. Heaps. Árvores múltiplas, árvores B. Funções hash. Algoritmos para tabelas Hash. Busca Sequencial, Busca Binária. Árvores de Pesquisa. Ordenação Interna: Ordenação por Seleção; Ordenação por Inserção; Shellsort; Quicksort; Heapsort; Comparação entre os métodos de ordenação; Ordenação Parcial. PROFESSOR ANO/SEMESTRE 2012/01 AT AP TURMA CARGA HORÁRIA (aulas) APS AD APCC Total AT: Atividades Teóricas, AP: Atividades Práticas, APS: Atividades Práticas Supervisionadas, AD: Atividades a Distância, APCC: Atividades Práticas como Componente Curricular. DIAS DAS AULAS PRESENCIAIS Dia da semana Número de aulas no semestre (ou ano) Segunda Terça Quarta Quinta Sexta Sábado 3 PROGRAMAÇÃO E CONTEÚDOS DAS AULAS (PREVISÃO) Dia/Mês ou Semana Conteúdo das Aulas ou Período Número de Aulas PROCEDIMENTOS DE ENSINO AULAS TEÓRICAS Exposição do conteúdo. AULAS PRÁTICAS Desenvolvimento de trabalhos práticos com o conteúdo ministrado em sala de aula. PROCEDIMENTOS DE AVALIAÇÃO Provas e Trabalhos Práticos. REFERÊNCIAS Referencias Básicas: - ZIVIANI, NIVIO. Projeto de Algoritmos com Implementações em Java e C++, São Paulo: Thomson Pioneira, 2006. -DROZDEK, Adam. Estrutura de dados e algoritmos em C++. São Paulo, SP: Cengage Learning, c2002. xviii, 579 p. ISBN 8522102593. -GOODRICH, Michael T.; TAMASSIA, Roberto. Estruturas de dados e algoritmos em Java. 4. ed. Porto Alegre: Bookman, 2007. 600 p. ISBN 9788560031504. -LAFORE, Robert. Estrutura de dados e algoritmos em java. São Paulo, SP: Ciência Moderna, 2004. xxvi, 702 p. ISBN 8573933755. -DEITEL, H. M, DEITEL P.J. Java Como Programar. Sexta Edição. Pearson Prentice Hall, 2005 Referências Complementares: -PREISS, Bruno R. Estruturas de dados e algoritmos: padrões de projetos orientados a objetos com Java. Rio de Janeiro: Campus, c2001 xvi, 566 p. ISBN 9788535206937. - CORMEN, THOMAS H.; LEISERSON, CHARLES E.; RIVEST, RONALD L.; STEIN, CLIFFORD. Algoritmos – Teoria e Prática, Rio de Janeiro: Campus, 2002. - KNUTH, DONALD E. The Art of Computer Programming, Volume 1: Fundamental Algorithms, AddisonWesley, 1997. - KNUTH, DONALD E. The Art of Computer Programming, Volume 3: Sorting and Searching, Addison-Wesley, 1998. - SEDGEWICK, ROBERT. Algorithms in C++, Addison-Wesley, 1998. - TENENBAUM, AARON; LANGSAM, YEDIDYAH; AUGENSTEIN, MOSHE J. Estrutura de Dados Usando C, Rio de Janeiro: Makron, 1995. LOUDEN, KENNETH C. Compiladores, São Paulo: Thomson Pioneira, 2004 -WIRTH, Niklaus. Algorítmos e estruturas de dados. Rio de Janeiro: LTC, c1989. 255 p. ISBN 85-216-1190-0 -GUIMARÃES, Angelo de Moura; LAGES, Newton Alberto de Castilho. Algoritmos e estruturas de dados. Rio de Janeiro: LTC, c1994. 216 p. (Ciência de Computação) ISBN 85-216-0378-9. -LAUREANO, Marcos. Estrutura de dados com algoritmos e C. Rio de Janeiro, RJ: Brasport, 2008. 152p. : ISBN 9788574523552 - ASCENCIO, Ana Fernanda, DE CAMPOS, Edilene Aparecida. Fundamentos da Programação de Computadores. Prentice Hall, 2002. Assinatura do Professor Assinatura do Coordenador do Curso