CST Análise e Desenvolvimento de Sistemas

Propaganda
Plano de Ensino
CURSO: ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
DISCIPLINA: ESTRUTURAS DE DADOS
Matriz Curricular
Criação: 2009-1
Atualização: 2015-2
Carga Horária
80 H/A
EMENTA Funções. Passagem de parâmetros. Recursividade. Estruturas. Algoritmos de ordenação e busca. Ponteiros. Tipos abstratos de dados
(TADs), Pilhas, Filas, Listas lineares, Listas encadeadas. Hashing, Árvores de pesquisa, Árvores binárias, Árvores AVL (balanceadas) e Árvores
vermelho-preto.
OBJETIVOS
Conhecimentos Genéricos:
Habilitar o aluno a resolver problemas computacionais estruturados, elaborando programas com a utilização de estruturas de dados genéricas
fundamentais, tais como filas, pilhas, listas encadeadas.
Iniciar os conceitos primordiais em Java.
Aprofundar a técnica de programação, enfatizando conceitos de estrutura de dados
Conhecimentos Específicos:
Compreender os conceitos básicos de algoritmos como laços de repetição, estrutura de decisão, classes, conceitos de fila, pilha, array,
recursividade, busca binária, sequencial e recursiva.
Compreender os principais algoritmos de pesquisa e ordenação.
Manipular estruturas de dados com emprego de algoritmos e métodos de pesquisa e ordenação.
Compreender os conceitos básicos de orientação a objetos.
Habilidades (Saber fazer):
Compreender a lógica de programação e a linguagem java.
Saber selecionar e construir estruturas de dados adequadas para aplicações específicas, bem como modelar estas aplicações utilizando recursos
de recursão e técnicas com emprego de alocação de memória.
Plano de Ensino
Saber comparar estruturas de dados através da adequação ao problema.
Bases Tecnológicas:
Algoritmos
Fila, pilha, array
Recursividade
Busca binária, sequencial e recursiva
CONTEÚDO PROGRAMÁTICO
1. Revisão de Algoritmos e Implementações
1.1 Esqueleto de um código java
1.2 Declarando variáveis
1.3 Operadores de Atribuição
1.4 Operadores Aritméticos
1.5 Incrementar
1.6 Operadores Lógicos e Relacionais
1.7 Condicionais (if, else, if-else)
1.8 Switch
1.9 Laço de Repetição
2. Estrutura de Dados
2.1 Armazenamento sequencial
2.2 Array: instanciar, popular, percorrer e exibir
2.3 Conceitos de Pilha
2.4 Conceitos de Fila
3. Introdução a Orientação a Objetos (Classes estáticas e Métodos)
4. Algoritmos de Ordenação
Plano de Ensino
4.1 Conceitos do BubbleSort e ShellSort
4.2 Conceitos do SelectSort e InsertSort
4.3 Conceitos do MergeSort, HeapSort, QuickSort
5. Algoritmos de Pesquisa
5.1 Busca Sequencial
5.2 Busca Binária
5.3 Recursividade
5.4 Busca Binária e Sequencial com Recursividade
METODOLOGIA DE AULA E AVALIAÇÃO
Metodologia de Aula:
As aulas serão expositivas e dialogadas, explorando a interação entre docente e discente através de atividades em laboratório. As primeiras
aulas serão introdutórias ao Java. As aulas seguintes serão a respeito de estrutura de dados. Em cada aula será desenvolvido uma parte do
projeto proposto. O mesmo será apresentado na última aula.
Metodologia de Avaliação:
Será composta por: (1) Avaliações Continuadas [0 a 3,0 pontos] e, (2) Avaliação Regimental. [0 a 7,0 pontos].
A Avaliação Continuada será composta por:
Prova P1 (individual) .......................................................... 1,0 ponto
Prova P2 (individual) .......................................................... 1,0 ponto
Projeto (individual ou em dupla) ...................................... 1,0 ponto
Semana
Conteúdo Previsto
Habilidades Trabalhadas
Recursos
Bibliografia
Plano de Ensino
1
2
3
4
Utilizados
3,4,5
1
Lógica de Programação
3,4,5
1
Lógica de Programação
3,4,5
1
Lógica de Programação
3,4,5
1
Lógica de Programação
3,4,5
1
Conhecer as principais
estrutura de dados e sua
aplicação
Conhecer as principais
estrutura de dados e sua
aplicação
3,4,5
1,2,3
3,4,5
1,2,3
Apresentação do Plano de Ensino da disciplina: Ementa,
Integração
Objetivos, Conteúdo Programático, Critério de Avaliação e
Bibliografias.
Lógica de Programação
Integração dos Alunos:
- Apresentação da disciplina (Ementa, Objetivos,
Metodologia, Bibliografia, Plano de Ensino) e do professor
- Apresentação da Metodologia de avaliação e de
verificação de presenças
1. Revisão de Algoritmos e Implementações
1.1 Esqueleto de um código java
1.2 Declarando variáveis
1.3 Operadores de Atribuição
1.4 Operadores Aritméticos
1.5 Incrementar
1.6 Operadores Lógicos e Relacionais
1.7 Condicionais (if, else, if-else)
1.8 Switch
1.9 Laços de Repetição (for, while, do-while)
5
6
7
8
Apresentação do Trabalho a ser desenvolvido
2. Estrutura de Dados
2.1 Armazenamento sequencial
2.2 Array: instanciar, popular, percorrer e exibir
2.3 Conceitos de Pilha
2.4 Conceitos de Fila
1ª Avaliação Continuada
Plano de Ensino
9
3. Introdução a Orientação a Objetos (Classes estáticas e
Métodos)
10
4. Algoritmos de Ordenação
4.1 Conceitos do BubbleSort e ShellSort
4.2 Conceitos do SelectSort e InsertSort
11
4.3 Conceitos do MergeSort, HeapSort, QuickSort
12
13
14
15
16
17
18
19
20
5. Algoritmos de Pesquisa
5.1 Busca Sequencial
5.2 Busca Binária
5.3 Recursividade
5.4 Busca Binária e Sequencial com Recursividade
Compreender os conceitos
básicos de orientação a
objetos
Conhecer os principais
algoritmos de ordenação e
sua aplicação
Conhecer os principais
algoritmos de ordenação e
sua aplicação
Conhecer os principais
algoritmos de ordenação e
sua aplicação
Conhecer os principais
algoritmos de pesquisa e
sua aplicação
Conhecer os principais
algoritmos de pesquisa e
sua aplicação
3,4,5
1,2,3
3,4,5
1,2,3
3,4,5
1,2,3
3,4,5
1,2,3
3,4,5
1,2,3
3,4,5
1,2,3
2ª Avaliação Continuada
Apresentação dos trabalhos
3,4,5
Revisão de todo conteúdo para Regimental
3,4,5
Avaliação Regimental
Vista da Avaliação Regimental e Segunda Chamada
Reavaliação
Plano de Ensino
BIBLIOGRAFIA BÁSICA
1
2
3
DEITEL, PAUL J. Java: como programar. Tradução Edson Furmankiewicz. 8. ed. São Paulo: Pearson, 2012.
PEREIRA, Silvio do Lago. Estruturas de Dados Fundamentais – Conceitos e Aplicações. 7.ed. São Paulo: Érica, 2008.
MORAES, Celso Roberto. Estruturas de Dados e Algoritmos. Uma abordagem didática. Edição revista e Ampliada. São Paulo: Editora
Futura, 2003.
BIBLIOGRAFIA COMPLEMENTAR
1
2
3
4
5
SZWARCFITER, Jayme Luiz; MARKENZON, Lilian. Estruturas de dados e seus algoritmos. Rio de Janeiro: L.T.C., 1994
DASGUPTA, Sanjoy; UMESH, Vazirani, PAPADIMITRIOU Christos, Algoritmos. 1ª Edição. São Paulo: McGraw-Hill, 2009.
WIRTH, Niklaus. Algoritmos e estruturas de dados. Rio de Janeiro: LTC, 2009.
KOFFMANN, E.B. Objetos, Abstração, Estrutura de Dados e Projetos. 1ª Ed. Rio de Janeiro: LTC, 2008.
LAUREANO, M. Estrutura de Dados com Algoritmos e C. 1ª Ed. São Paulo: Brasport, 2008.
RECURSOS DIDÁTICOS
1
TV/VÍDEO/DVD
4
LABORATÓRIO
2
QUADRO
5
AULA EXPOSITIVA
Plano de Ensino
3
DATASHOW
Professor Responsável: ARIEL DA SILVA DIAS
Outros professores:
Data e Assinatura
Observações
6
Download