aula de bioquímica bioquímica dos carboidratos.ppt
Estrutura de Dados II - Plano de Ensino
1. Campus Higienópolis: Rua da Consolação, 896 Edifício João Calvino – 7º andar – Sala 715 Consolação São Paulo – SP CEP 01302-907
Tel. (11) 2114-8165 www.mackenzie.br - e-mail: decanatoacademico@mackenzie.br
UNIVERSIDADE PRESBITERIANA MACKENZIE
Decanato Acadêmico
Unidade Universitária: Faculdade de Computação e Informática
Curso: Sistemas de Informação Núcleo Temático: Programação
Disciplina: Estrutura de Dados II Código da Disciplina:
110.5312-7
Professor(es):
Antônio Luiz Basile (03J12)
Daniel Arndt Alves (03J)
Laércio Cruvinel Jr. (03J11)
DRT:
111600-2
112447-7
114241-2
Etapa: 3º.
Carga horária:
60 h/a semestrais e 4 h/a
semanais (2T e 2L)
( 2 ) Teórica
( 2 ) Prática
Semestre Letivo:
2º. Sem. 2013
Ementa:
A notação O, algoritmos de ordenação e busca, tabela hashing, árvores, árvores binárias,
introdução a grafos e os algoritmos básicos de grafos (busca em profundidade, busca em largura,
caminho mais curto). Na parte prática desta disciplina os alunos devem implementar os algoritmos
apresentados em sala e, em particular, fazer uma comparação entre os algoritmos de ordenação.
Deve ser utilizado o paradigma de orientação a objeto na parte prática deste curso.
Objetivos:
Conceitos Procedimentos e Habilidades Atitudes e Valores
- Aprender os fundamentos de
Estrutura de Dados e suas
aplicações
- Analisar estratégias de
implementação destas
Estruturas de Dados
- Entender e analisar a
eficiência destas estruturas
- Ser capaz de entender o
funcionamento das principais
estruturas de dados
- Ser hábil a avaliar a melhor
estrutura de dados para cada
aplicação
- Ser capaz de desenvolver
aplicações utilizando estas
estruturas de dados
- Ter consciência da importância
da avaliação de desempenho
das principais estruturas de
dados para aplicações
científicas e/ou comerciais
- Valorizar o reuso de código
- Fazer uso do trabalho
cooperativo para
desenvolvimento de tarefas
complexas.
2. Campus Higienópolis: Rua da Consolação, 896 Edifício João Calvino – 7º andar – Sala 715 Consolação São Paulo – SP CEP 01302-907
Tel. (11) 2114-8165 www.mackenzie.br - e-mail: decanatoacademico@mackenzie.br
UNIVERSIDADE PRESBITERIANA MACKENZIE
Decanato Acadêmico
Conteúdo Programático:
Desempenho de Algoritmos
- Algoritmos, estrutura de dados e tipo abstrato de dados
- Metodologia de análise de algoritmos: Modelo experimental, vantagens e desvantagens.
Modelo matemático, pseudocódigo, contagem de operações primitivas.
- Análise do pior caso, melhor caso e caso médio.
- Análise assintótica
- Notação O
- Classe de funções comumente usadas na análise de algoritmos
Métodos de Ordenação
- Algoritmos clássicos: Seleção, Inserção, Bubblesort, Mergesort, Quicksort
- Análise de pior caso para os algoritmos clássicos de ordenação baseados em comparações
- Comparação entre os métodos
Métodos de Busca
- Busca Linear e sua análise
- Busca Binária e sua análise
- Tabela Hashing: Resolução de colisão via endereçamento aberto. Implementação e análise
de eficiência
Estrutura de Dados Não Lineares ou Árvores
- Especificação do tipo abstrato de dado Árvore Binária
- Percursos em árvores
- Árvores binárias de busca
- Operações básicas: busca, inserção e remoção
- Implementação e análise de eficiência
- Aplicações
Introdução à Grafos
- Especificação do tipo abstrato de dado Grafo
- Percursos em grafo: em largura e em profundidade
- Caminho mínimo
- Implementação e análise de eficiência
- Aplicações
Metodologia:
Aulas expositivas
Listas de exercícios
Disponibilização de material complementar
Utilização do ambiente Moodle
Aulas práticas de laboratório com utilização de um ambiente de desenvolvimento Java - JDK,
Tomcat, Eclipse, NetBeans, JCreator ou equivalente, documentação online da API do Java, uso do
Javadoc
3. Campus Higienópolis: Rua da Consolação, 896 Edifício João Calvino – 7º andar – Sala 715 Consolação São Paulo – SP CEP 01302-907
Tel. (11) 2114-8165 www.mackenzie.br - e-mail: decanatoacademico@mackenzie.br
UNIVERSIDADE PRESBITERIANA MACKENZIE
Decanato Acadêmico
Critério de Avaliação:
• Avaliação Teórica Parcial, individual, dissertativa sem consulta – 15%
• Avaliação Unificada, individual, dissertativa sem consulta (PROCOMP) – 10%
• Desenvolvimento de listas de exercícios, em grupo, com consulta – 5%
• Atividades práticas de laboratório, individuais ou em grupo, com consulta – 20%
• Prova Final, individual, dissertativa e sem consulta – 50%
• Nota de Participação (calculada a partir da interação com os recursos complementares –
Moodle, sendo 60% dos exercícios complementares submetidos e 40% do tempo gasto na
interação com o ambiente Moodle).
Bibliografia Básica:
GOODRICH, Michael T.; TAMASSIA, Roberto; COPSTEIN, Bernardo; OLIVEIRA, João Batista.
Projeto de algoritmos: fundamentos, análise e exemplos da Internet. Porto Alegre: Bookman,
2004
ZIVIANI, N. Projeto de algoritmos com implementações em Java e C++. São Paulo: Pioneira
Thomson Learning, 2007
Bibliografia Complementar:
CORMEN, Thomas H. Introduction to algorithms. 2nd ed. Cambridge: MIT Press, 2001.
DEITEL, H. M.; DEITEL, P.J. Java – Como Programar. 6ª edição, São Paulo, SP, Pearson Brasil,
2005.
KNUTH,D.,The Art Of Computer Programming, Vol III, Sorting and Searching. Addison Wesley,
1973.
KNUTH, D. E.,The Art Of Computer Programming, Vol I, Fundamental Algorithms. Addison-
Wesley, 1972.
SEDGEWICK, Robert. Algorithms in Java – Parts 1-4: fundamentals, data structures, sorting,
searching. 3rd ed. Boston: Addison-Wesley, 2002.
SEDGEWICK, Robert. Algorithms in Java – Parts 5: graph algorithm . 3rd ed. Boston: Addison-
Wesley, 2003.