TADS:Estrutura de Dados: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
 
(26 revisões intermediárias por 4 usuários não estão sendo mostradas)
Linha 1: Linha 1:
=Plano de ensino=
'''Semestre''':
==1. IDENTIFICAÇÃO==
=Objetivo=
'''Curso''': Tecnologia em Análise e Desenvolvimento de Sistemas
 
'''Componente Curricular''': Estruturas de Dados
 
'''Professor''': Estevan Braz Brandt Costa
 
'''Turma''': 01/2015
 
'''Período Letivo''': Segundo
 
'''Ano:''' 2015
 
'''Carga horária''': 72
 
'''Horário Semanal de Atendimento ao Estudante:''' Determinar Data
 
==2. EMENTA==
Introdução a estruturas de dados. Estruturas estáticas e dinâmicas. Registros. Ponteiros. Listas encadeadas. Pilhas. Filas. Recursividade. Árvores. Balanceamento. Hashes. Métodos de busca e ordenação de vetores.
 
==3. CONTEÚDO PROGRAMÁTICO==
 
 
==4. OBJETIVOS DO COMPONENTE CURRICULAR==
Possibilitar ao aluno o entendimento das técnicas de organização de dados heterogêneos, em relação à eficiência de ocupação de espaço de armazenamento, velocidade de armazenamento e de acesso aos dados, bem como complexidade de codificação.
Possibilitar ao aluno o entendimento das técnicas de organização de dados heterogêneos, em relação à eficiência de ocupação de espaço de armazenamento, velocidade de armazenamento e de acesso aos dados, bem como complexidade de codificação.
=Ementa=
Introdução a estruturas de dados; estruturas estáticas e dinâmicas; registros; ponteiros; listas encadeadas; pilhas; filas; recursividade; árvores; balanceamento; hashes; métodos de busca e ordenação de vetores.


==5. PROCEDIMENTOS METODOLÓGICOS==
=Planos de ensino=
===Metodologia de ensino===
* [[Media:Plano-ensino-estruturas-2016.2.pdf | 2016/2]] (Prof. Júlio César Royer)
* Aulas expositivas em laboratório de informática com projetor.
* [[TADS:Estruturas de dados (2015-2)|2015/2]] (Prof. Estevan Braz Brandt Costa)
* Uso de ambiente de programação para desenvolvimento das atividades
* [[TADS:Estrutura de Dados: 2014-2|2014/2]] (Prof. [[Usuário:Evandro.cantu | Evandro Cantú]])
* Uso do computador para em laboratório para exemplificação dos conteúdos didáticos
 
===Recursos e materiais===
* Aulas expositivas empregando: quadro, multimídia;
* Seminários para apresentação de trabalhos;
* Trabalhos individuais e/ou grupo;
* Exercícios em sala de aula.
 
==6. AVALIAÇÃO==
Trabalhos individuais e/ou grupo;
 
Apresentação de seminários;
 
Provas bimestrais individuais;
 
Participação em sala.
 
==REFERÊNCIAS BIBLIOGRÁFICAS==
==REFERÊNCIAS BÁSICAS==
#ZIVIANI, Nívio. Projeto de algoritmos com implementações em Pascal e C. 3ª ed., Cengage Learning, 2010.
#PEREIRA, Sílvio do Lago. Estruturas de dados fundamentais: conceitos e aplicações. 8ª ed., Erica, 1996.
#ESZWARCFITER, Jaime Luis, MARKENZON, Lilian. Estruturas de dados e seus algoritmos. 3ª ed., LTC, 2010.
#FEOFILOFF, Paulo. Algoritmos em linguagem C. 23ª ed., Campus, 2009.
#AGUILAR, Luis Joyannes. Programação em C++: algoritmos, estruturas de dados e objetos. 2ª ed., Bookmann, 2008.
 
==REFERÊNCIAS COMPLEMENTARES==
#[[Mídia:EstruturaDadosC.pdf | TENENBAUM, Aaron M.; LANGSAM, Yedidyah; AUGENSTEIN, Moshe. Estruturas de dados usando C. Makron Books, 1995.]]
#EDELWEISS, Nina; GALANTE, Renata. Estruturas de dados. Bookman, 2009.
#GOODRICH, Michael T.; TAMASSIA, Roberto. Estruturas de dados e algoritmos em java. 4ª ed., Bookman, 2007.
#ASCENCIO, Ana Fernanda Gomes. Estruturas de dados. Pearson, 2011.
#LAFORE, Robert. Estruturas de dados e algoritmos em Java. Ciência Moderna, 2005.
# GONÇALVES, Edson. Dominando Java Server Faces e Facelets Utilizando Spring 2.5, Hibernate e JPA. Ciência Moderna, 2008.
 
 
==MATERIAIS DE APOIO==
*[http://www.mtm.ufsc.br/~azeredo/cursoC/c.html Curso: '''Linguagem C''']
*[http://homepages.dcc.ufmg.br/~joaoreis/Site%20de%20tutoriais/c_int/index.htm Curso: '''C Intermediário''']
*[[Mídia:LinguagemC.pdf | KERNIGHAN, B.W.; RITCHIE, D.M. The C Programming Language, Prentice Hall, 2<sup>o</sup> ed. 1978.]]
*[http://aurelio.net/curso/material/vim-ref.html '''Editor VI''' - Guia de Referência]
 
=Diários de Aula=
 
*[[TADS:Estrutura de Dados: 2015-2]]: Estevan Costa <estevan.costa@ifpr.edu.br>
*[[TADS:Estrutura de Dados: 2014-2]]: Evandro Cantú <evandro.cantu@ifpr.edu.br>
 
===17/fev===
 
Os exercícios deverão ser realizados considerando uma "árvore base", que será passada em sala de aula, e valores sobre características pessoais. Ao entregar as respostas, coloque junto de cada letra o valor utilizado.
 
Valores Próprios:
 
A - Idade (em anos):
 
B - Dia do Nascimento:
 
C - Mês do Nascimento * 2:
 
D - Ano do Nascimento / 100 (exemplo: 1985 / 100 => 19,85 => 19):
 
E - Peso sem casa decimal
 
F - Últimos 2 digitos da altura (exemplo 1,84 -> 84)
 
G - Número do seu calçado
 
H - Número de Irmãos que possui.
 
Caso algum valor próprio se repita, ou o valor já exista na árvore base, adicione 1 até ficar um valor único.
Após determinar os números acima, e considerando a árvore base, faça:
 
1) Inserir os elementos na seguinte ordem: A, B, C, D, E, F, G, H. Depois, excluir os elementos na seguinte ordem: 50, 25, 75.
 
2) Inserir os elementos na seguinte ordem: B, D, F, H, A, C, E, G. Depois, excluir os elementos na seguinte ordem: 75, 25, 50
 
3) Inserir os elementos na seguinte ordem: A, B, C, D, H, G, F, E. Depois, escrever o resultado quando realizado o caminhamento In-Ordem, Pós-Ordem e Pré-Ordem.
 
4) Inverter o sinal de TODOS os valores (tanto da árvore base, quanto da árvore, quanto dos valores pessoais) e reinserir os valores na seguinte ordem: -50, -25, -75, -5, -37, -63, -100, -A, -B, -C, -D, -E, -F, -G, -H.
 
===15/fev===
*[[TADS:Estrutura de Dados: codigos1502]]: Árvore com Menu!
 
Exercício:
De acordo com a legislacão javaiana, um servidor público pode ter até 2 funcionários trabalhando para ele. Cada um destes funcionários pode ter outros 2 funcionários, e assim por diante. Crie um sistema que faca o seguinte:
 
1- Guarde os seguintes dados dos funcionários:código, nome, salario, custo para o governo. O nome é o nome do funcionário. O código é um número inteiro que ajuda a identificar a pessoa dentro do congresso (este número é único). O salário é quanto ele ganha (em R$), e o custo para o governo é a somatória do salário de todos os funcionários que trabalham para ele, mais seu próprio salário.
 
2- Será utilizado o campo da código para realizar a ordenacão dos elementos.
 
3- O sistema deve permitir a pessoa digitar o código e o sistema informar os dados do funcionário, bem como o código e o nome de todos os seus subordinados. Além disso, o sistema deve mostrar quem é o chefe dele.
 
4- Se a pessoa A é funcionário de B, e B é funcionário de C, então A também é funcionário de C.
 
Entregar até dia 21/02, via e-mail, com Assunto (Trabalho ED Arvore Binária), e com seu nome no arquivo (pode ser seu nome na pasta).
 
===10/fev===
*[[TADS:Estrutura de Dados: codigos1002]]: Árvore de Busca Binária com Insercão
 
===06/fev===
*[[TADS:Estrutura de Dados: codigos0602]]: Códigos Para uso em sala
 
===03/fev===
*[[TADS:Estrutura de Dados: Exercicio0302]]: Exercícios de fixação>
 
===16/dez===
*[[Mídia:exemplostruct.zip | Exemplo de Uso do Struct]]
*[[Mídia:bubblequick.zip | Bubble Sort e Quick Sort]]
*[[Mídia:binariaemerge.zip | Busca Binária e Merge Sort]]
 
===09/dez===
Apresentação da Lista Duplamente Encadeada e Lista Duplamente Encadeada Circular
Códigos feitos na sala de aula, de uma lista encadeada, todo comentado
*[[Mídia:LE0912.zip | Exemplo Lista Encadeada]]
Exercício de Avaliacão para Entregar dia 23/12.
*[[Mídia:segundaprova.zip | Trabalho de Avaliação]]
 
===07/dez===
Reforço de Lista Encadeada. Demonstração da lista circular.
Exercício de Reforço para Entregar dia 21/12
*[[Mídia:RecuperacaoLista.odt | Exercício de Recuperação]]
 
===21/out===
Estrutura de dados Fila.
*[[Mídia:CodigoFila.zip | Exemplo de Fila]]
 
===19/out===
Estrutura de dados Pilha.
*[[Mídia:CodigoPilha.zip | Exemplo de Pilha]]
 
===14/out===
*[http://latinoware.org/ Evento: '''Latinoware''']
 
===07/out===
Revisão de desenvolvimento em C (Utilização de structs, formas de se embaralhar elementos em um mesmo vetor).
 
===30/set===
Apresentação da disciplina.
Revisão de desenvolvimento em C (Utilização de Vetores e estruturas de repetição).


----


[[Categoria:TADS]]
[[Categoria:TADS]]

Edição atual tal como às 18h06min de 21 de novembro de 2016

Semestre: 2º

Objetivo

Possibilitar ao aluno o entendimento das técnicas de organização de dados heterogêneos, em relação à eficiência de ocupação de espaço de armazenamento, velocidade de armazenamento e de acesso aos dados, bem como complexidade de codificação.

Ementa

Introdução a estruturas de dados; estruturas estáticas e dinâmicas; registros; ponteiros; listas encadeadas; pilhas; filas; recursividade; árvores; balanceamento; hashes; métodos de busca e ordenação de vetores.

Planos de ensino