Estrutura de Dados II - Apresentação da Disciplina
-
Upload
daniel-arndt-alves -
Category
Documents
-
view
455 -
download
0
description
Transcript of Estrutura de Dados II - Apresentação da Disciplina
Universidade Presbiteriana Mackenzie
Aula 1: Apresentação da Disciplina
Prof. Ms. Daniel Arndt Alves
Faculdade de Computação e Informática
Estrutura deDados II
Apresentação da Disciplina 1Daniel Arndt Alves
Tópicos da Aula
• Professor
• Objetivos
• Conteúdo Programático
• Referências Bibliográficas
• Regras
• Notas
• Comunicados & Avisos
• Datas Importantes
Apresentação da Disciplina 2Daniel Arndt Alves
Tópicos da Aula
• Padrões de Nomenclatura
• Um Mau Layout
• Um Bom Layout
Apresentação da Disciplina 3Daniel Arndt Alves
Professor
• Daniel Arndt Alves
– Bacharel em Ciência da Computação
– Mestre em Engenharia Elétrica
• http://www.progdan.pro.br/
Apresentação da Disciplina 4Daniel Arndt Alves
Professor
• Mackenzie
– Professor PPI da Faculdade deComputação e Informática
– Administrador do Mackenzie Virtual (Moodle) –http://ead.mackenzie.br/mackenzievirtual/
– Administrador do Cluster de Pesquisaem Computação Evolutiva e AutômatosCelulares – http://ecca.mackenzie.br/
Apresentação da Disciplina 5Daniel Arndt Alves
Objetivos
• Cognitivos
– Aprender os fundamentos deEstrutura de Dados e sua aplicações
– Analisar estratégias deimplementação destas Estruturasde Dados
– Entender e analisar a eficiência destas estruturas
Daniel Arndt Alves Apresentação da Disciplina 6
Objetivos
• Habilidades
– Ser capaz de entender ofuncionamento das principaisestruturas de dados
– Ser hábil a avaliar a melhor estruturade dados para cada aplicação
– Ser capaz de desenvolver aplicações utilizando estas estruturas de dados
Daniel Arndt Alves Apresentação da Disciplina 7
Objetivos
• Atitudes
– Ter consciência da importância daavaliação do desempenho dasprincipais estruturas de dados paraaplicações científicas e/ou comerciais
– Valorizar o reuso de código
– Fazer o uso do trabalho cooperativopara desenvolvimento de tarefascomplexas
Daniel Arndt Alves Apresentação da Disciplina 8
Conteúdo Programático
• Algoritmos de Ordenação
– Bubble Sort
– Selection Sort
– Insertion Sort
– QuickSort
– Merge
– Complexidade: Notação Big-O
Daniel Arndt Alves Apresentação da Disciplina 9
Conteúdo Programático
• Algoritmos de Busca– Busca Binária
– Hashing
• Recursão
• Árvores– Busca, Inserção, Remoção
– Percorrendo Árvores
• Grafos– Busca, Caminho Mais Curto
Daniel Arndt Alves Apresentação da Disciplina 10
Referências Bibliográficas
• DEITEL, H. M., DEITEL, P. J. Java Como Programar. 8ª ed. Prentice Hall, 2010.
• GOODRICH, M. T., TAMASSIA, R. -Estruturas de Dados e Algoritmos em Java. 4ª ed. Bookman, 2007.
Daniel Arndt Alves Apresentação da Disciplina 11
Regras
• Pontualidade
– O Professor dará o melhor de sipara se apresentar no horário deinício das aulas.
– Os Alunos darão o melhor de si para se apresentarem no horário de início das aulas.
Daniel Arndt Alves Apresentação da Disciplina 12
Regras
• Presença
– A chamada será realizada no início decada aula.
– Eventualmente, a chamada poderá ser realizada mais tarde, sem que isto deva ser entendido como alteração desta regra.
Daniel Arndt Alves Apresentação da Disciplina 13
Regras
• Presença
– Os Alunos deverão gerenciar a suacota de faltas adequadamente,levando em conta o tráfego da cidade,as responsabilidades em seu trabalho,feriados, possíveis problemas de saúde, distrações durante a chamada, etc.
Daniel Arndt Alves Apresentação da Disciplina 14
Regras
• Presença
– O Professor não dará presença a umaluno ausente, qualquer que seja arazão. Abonos de faltas deverão serdiscutidos diretamente com a Secretaria Geral da Universidade.
Daniel Arndt Alves Apresentação da Disciplina 15
Regras
• Entrega de Trabalhos
– Os trabalhos devem ser entregues nadata determinada pelo Professor.
Daniel Arndt Alves Apresentação da Disciplina 16
Regras
• Entrega de Trabalhos
– Atrasos poderão eventualmente serconsiderados em casos de doença,sempre fundamentada em atestadomédico e requerimento apresentado à Secretaria da FCI, no dia subsequente à alta médica
Daniel Arndt Alves Apresentação da Disciplina 17
Regras
• Datas das Provas
– As datas definidas para as provasdesde o início do curso, não serão alteradas em hipótese alguma.
Daniel Arndt Alves Apresentação da Disciplina 18
Regras
• Datas das Provas
– O Aluno poderá, eventualmente,efetuar a prova em outro dia, a ser determinado pelo professor, nas seguintes situações:
• Doença – fundamentada por atestadomédico e requerimento apresentadoà Secretaria da FCI.
Daniel Arndt Alves Apresentação da Disciplina 19
Regras
• Datas das Provas
– O Aluno poderá, eventualmente,efetuar a prova em outro dia, a serdeterminado pelo professor, nasseguintes situações:
• Atividade no Trabalho – fundamentada por correspondência da empresa, em papel timbrado, esclarecendo o motivo e declarando ter sido informada pelo aluno sobre a realização da prova, e requerimentoapresentado à Secretaria da FCI.
Daniel Arndt Alves Apresentação da Disciplina 20
Regras
• Datas das Provas
– O requerimento deve serapresentado à Secretaria da FCI no dia subsequente à ocorrência.
Daniel Arndt Alves Apresentação da Disciplina 21
Notas
• Haverá 1 prova parcial (P1), Listas deExercícios e Micro-Avaliações (Ex),mais participação em aula, e a nota de Laboratório (Lab), com os pesos:
• N1 = (30 P1 + 20 PROCOMP + 10 Ex + 40 Lab)/100 + Participação
• MF = (N1 + PF)/2
Daniel Arndt Alves Apresentação da Disciplina 22
Notas
• A nota de Participação será compostapelos seguintes critérios:
– 60% pelos Exercícios Complementares submetidos no ambiente Moodle
– 40% do tempo gasto na interação com os recursos disponíveis no ambiente Moodle
Daniel Arndt Alves Apresentação da Disciplina 23
Notas
• O desempenho nas aulas seráregistrado no Ambiente Moodle,no espaço dedicado à disciplina de Teoria.
• O aluno poderá consultar a qualquermomento suas notas parciais através dolink “notas” no ambiente Moodle.
Daniel Arndt Alves Apresentação da Disciplina 24
Comunicados & Avisos
• Todos os comunicados e avisosreferentes à disciplina serão postados através do Ambiente Moodle(Mackenzie Virtual).
• O Aluno deve acompanhar seu e-mail @mackenzista.com.br ou redirecioná-lo ao provedor de sua preferência.
Daniel Arndt Alves Apresentação da Disciplina 25
Comunicados & Avisos
• Todas as atividades estarãodisponíveis no Ambiente Moodle(Mackenzie Virtual).
• O Aluno deverá postar seus exercícios etrabalhos somente no Ambiente Moodle (Mackenzie Virtual)
Daniel Arndt Alves Apresentação da Disciplina 26
Datas Importantes
• 11 a 24/Set./2013 – Provas Parciais
• 23/Out./2013 – PROCOMP
• 25/Nov. – 15/Dez./2013 – Provas Finais e Vistas
Daniel Arndt Alves Apresentação da Disciplina 27
Padrões de Nomenclatura
Daniel Arndt Alves Apresentação da Disciplina 28
“Programming is best regardedas the process of creatingworks of literature, which are meant to be read.”Donald E. Knuth,Literate Programming
Padrões de Nomenclatura
Daniel Arndt Alves Apresentação da Disciplina 29
“Any fool can write code that a computer can understand. Good programmers write codethat humans can understand.”Martin Fowler,Refactoring, Improving theDesign of Existing Code
Padrões de Nomenclatura
• Variáveis– int umaVariavel;
– int uma_Variavel;
• Funções– public void umaFuncao (int
umParametro);
– public void umaFuncao (int
um_Parametro);
Daniel Arndt Alves Apresentação da Disciplina 30
Padrões de Nomenclatura
• Classes– public class umaClasse;
– public class uma_Classe;
• Constantes– static final String ERROR =
"Erro!”;
Daniel Arndt Alves Apresentação da Disciplina 31
Um Mau Layout
// Atribuindo n dividido por 2 em r
r = n / 2;
// Loop while r-(n/r) enquanto for maior que t
while(abs(r - (n / r)) > t){
// Atribuindo a metade de r+(n/r) em r
r = 0.5 * (r + (n / r));
}
Daniel Arndt Alves Apresentação da Disciplina 32
Um Bom Layout
/*
* Raiz quadrada de n com
* aproximação de
* Newton-Raphson
*/
r = n / 2;
while(abs(r - (n / r)) > t){
r = 0.5 * (r + (n / r));
}
Daniel Arndt Alves Apresentação da Disciplina 33
Apresentação da Disciplina 34Daniel Arndt Alves
Apresentação da Disciplina 35Daniel Arndt Alves
Imagens
• http://www.caelum.com.br/imagens/curso/cs14-imagem.jpg• http://www.showmesavings.com/images/target.gif• http://sandersconsulting.com/Portals/58319/images/checklist.jpg• http://www.classichitspaulista.com.br/wp-content/uploads/2010/12/correios-triagem.jpg• http://www.blackboard.com/resources/connections/SEARCH-1.jpg• http://static.howstuffworks.com/gif/how-to-plant-trees-shrubs-and-vines-47.jpg• http://ffodissahnerak.files.wordpress.com/2007/11/grafo.gif• http://xpress.superpedido.com.br/Imagens/Capas200502/8536301236.jpg• http://imagem.buscape.com.br/capas/livros/205/031/190x190_8560031502.jpg• http://d.yimg.com/gg/u/7a62d58d03887ad0ea7e52fa078e0c0de7b19db6.jpeg• http://www.computertrainingpattaya.com/images/big-tick.jpg• http://dbestwebdeveloper.com/pinoy-website-developer/wp-
content/uploads/2010/07/12282598707YbD6m.jpg• http://lake.k12.fl.us/moe/lib/moe/test.jpg• http://acccbuzz.files.wordpress.com/2010/12/grade.jpg• http://www.vshandw.com/images/icon.information.gif• http://cs.bloomington.k12.mn.us/modules/groups/homepagefiles/cms/1597624/Image/Icons/cale
ndar+icon3.png• http://www.goldb.org/goldblog/cmg_images/real_programmers_binary.jpg
Daniel Arndt Alves Apresentação da Disciplina 36