SlideShare uma empresa Scribd logo
Universidade Presbiteriana Mackenzie
Aula 1: Apresentação da Disciplina
Prof. Ms. Daniel Arndt Alves
Faculdade de Computação e Informática
Estrutura de
Dados 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 de
Computação e Informática
– Administrador do Mackenzie Virtual (Moodle) –
http://ead.mackenzie.br/mackenzievirtual/
– Administrador do Cluster de Pesquisa
em Computação Evolutiva e Autômatos
Celulares – http://ecca.mackenzie.br/
Apresentação da Disciplina 5Daniel Arndt Alves
Objetivos
• Cognitivos
– Aprender os fundamentos de
Estrutura de Dados e sua aplicações
– Analisar estratégias de
implementação destas Estruturas
de Dados
– Entender e analisar a eficiência destas estruturas
Daniel Arndt Alves Apresentação da Disciplina 6
Objetivos
• Habilidades
– 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
Daniel Arndt Alves Apresentação da Disciplina 7
Objetivos
• Atitudes
– Ter consciência da importância da
avaliação do desempenho das
principais estruturas de dados para
aplicações científicas e/ou comerciais
– Valorizar o reuso de código
– Fazer o uso do trabalho cooperativo
para desenvolvimento de tarefas
complexas
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 si
para se apresentar no horário de
iní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 de
cada 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 sua
cota 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 um
aluno ausente, qualquer que seja a
razão. Abonos de faltas deverão ser
discutidos diretamente com a Secretaria Geral da
Universidade.
Daniel Arndt Alves Apresentação da Disciplina 15
Regras
• Entrega de Trabalhos
– Os trabalhos devem ser entregues na
data determinada pelo Professor.
Daniel Arndt Alves Apresentação da Disciplina 16
Regras
• Entrega de Trabalhos
– Atrasos poderão eventualmente ser
considerados em casos de doença,
sempre fundamentada em atestado
mé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 provas
desde 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 atestado
mé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 ser
determinado pelo professor, nas
seguintes 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 requerimento
apresentado à Secretaria da FCI.
Daniel Arndt Alves Apresentação da Disciplina 20
Regras
• Datas das Provas
– O requerimento deve ser
apresentado à Secretaria da FCI no dia
subsequente à ocorrência.
Daniel Arndt Alves Apresentação da Disciplina 21
Notas
• Haverá 1 prova parcial (P1), Listas de
Exercí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á composta
pelos 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 qualquer
momento suas notas parciais através do
link “notas” no ambiente Moodle.
Daniel Arndt Alves Apresentação da Disciplina 24
Comunicados & Avisos
• Todos os comunicados e avisos
referentes à 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ão
disponíveis no Ambiente Moodle
(Mackenzie Virtual).
• O Aluno deverá postar seus exercícios e
trabalhos 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 regarded
as the process of creating
works 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 code
that humans can understand.”
Martin Fowler,
Refactoring, Improving the
Design 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
Obrigado
Daniel Arndt Alves
daniel.alves@mackenzie.br
Apresentação da Disciplina 37Daniel Arndt Alves

Mais conteúdo relacionado

Mais procurados

Integração entre Sistemas de Informação
Integração entre Sistemas de InformaçãoIntegração entre Sistemas de Informação
Integração entre Sistemas de InformaçãoCésar Augusto Pereira
 
Aula 01 - Introdução ao Sistema de Informação
Aula 01 - Introdução ao Sistema de InformaçãoAula 01 - Introdução ao Sistema de Informação
Aula 01 - Introdução ao Sistema de InformaçãoDaniel Brandão
 
Gerência de Configuração
Gerência de ConfiguraçãoGerência de Configuração
Gerência de ConfiguraçãoWagner Zaparoli
 
Aula02 - Componentes de um Computador
Aula02 - Componentes de um ComputadorAula02 - Componentes de um Computador
Aula02 - Componentes de um ComputadorSuzana Viana Mota
 
Criação do pendrive bootável
Criação do pendrive bootávelCriação do pendrive bootável
Criação do pendrive bootávelFrancis Torres
 
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosBanco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosLeinylson Fontinele
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas OperacionaisAdir Kuhn
 
Aula 19 instalação de drivers de dispositivos
Aula 19   instalação de drivers de dispositivosAula 19   instalação de drivers de dispositivos
Aula 19 instalação de drivers de dispositivosMarcos Basilio
 
Informatica basica
Informatica basicaInformatica basica
Informatica basicaAdir Kuhn
 
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoLeinylson Fontinele
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoLeinylson Fontinele
 
Aula 10 - Adição no Sistema Binário
Aula 10 - Adição no Sistema BinárioAula 10 - Adição no Sistema Binário
Aula 10 - Adição no Sistema BinárioSuzana Viana Mota
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Leinylson Fontinele
 
Módulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwareMódulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwarePaulo Guimarães
 
Oficina de Iniciação a Informática
Oficina de Iniciação a InformáticaOficina de Iniciação a Informática
Oficina de Iniciação a Informáticamarcelasb
 

Mais procurados (20)

Integração entre Sistemas de Informação
Integração entre Sistemas de InformaçãoIntegração entre Sistemas de Informação
Integração entre Sistemas de Informação
 
Aula 01 - Introdução ao Sistema de Informação
Aula 01 - Introdução ao Sistema de InformaçãoAula 01 - Introdução ao Sistema de Informação
Aula 01 - Introdução ao Sistema de Informação
 
Gerência de Configuração
Gerência de ConfiguraçãoGerência de Configuração
Gerência de Configuração
 
Aula02 - Componentes de um Computador
Aula02 - Componentes de um ComputadorAula02 - Componentes de um Computador
Aula02 - Componentes de um Computador
 
Criação do pendrive bootável
Criação do pendrive bootávelCriação do pendrive bootável
Criação do pendrive bootável
 
Inf basica modulo2
Inf basica modulo2Inf basica modulo2
Inf basica modulo2
 
Aula 01 instalação de hardware
Aula 01 instalação de hardwareAula 01 instalação de hardware
Aula 01 instalação de hardware
 
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de DadosBanco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Modelagem de dados
Modelagem de dados Modelagem de dados
Modelagem de dados
 
Aula 19 instalação de drivers de dispositivos
Aula 19   instalação de drivers de dispositivosAula 19   instalação de drivers de dispositivos
Aula 19 instalação de drivers de dispositivos
 
Informatica basica
Informatica basicaInformatica basica
Informatica basica
 
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
 
Informática Básica - Aula 04 - Software
Informática Básica - Aula 04 - SoftwareInformática Básica - Aula 04 - Software
Informática Básica - Aula 04 - Software
 
Banco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - ApresentaçãoBanco de Dados II Aula 01 - Apresentação
Banco de Dados II Aula 01 - Apresentação
 
Aula 10 - Adição no Sistema Binário
Aula 10 - Adição no Sistema BinárioAula 10 - Adição no Sistema Binário
Aula 10 - Adição no Sistema Binário
 
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
Sistemas Operacionais - Aula 01 (Conceitos básicos de so)
 
Módulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwareMódulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e Software
 
Oficina de Iniciação a Informática
Oficina de Iniciação a InformáticaOficina de Iniciação a Informática
Oficina de Iniciação a Informática
 

Destaque (9)

Arquitetura web
Arquitetura webArquitetura web
Arquitetura web
 
HTML Básico
HTML BásicoHTML Básico
HTML Básico
 
Programacao Modular
Programacao ModularProgramacao Modular
Programacao Modular
 
Introducao ao PHP
Introducao ao PHPIntroducao ao PHP
Introducao ao PHP
 
Sessao
SessaoSessao
Sessao
 
Strings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPStrings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHP
 
Variaveis Superglobais
Variaveis SuperglobaisVariaveis Superglobais
Variaveis Superglobais
 
Histórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de ProgramaçãoHistórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de Programação
 
Estrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de EnsinoEstrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de Ensino
 

Semelhante a Estrutura de Dados II - Apresentação da Disciplina

Linguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da DisciplinaLinguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da DisciplinaDaniel Arndt Alves
 
Técnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da DisciplinaTécnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da DisciplinaDaniel Arndt Alves
 
(LP2) Tópico 00 - Apresentação da Disciplina
(LP2) Tópico 00 - Apresentação da Disciplina(LP2) Tópico 00 - Apresentação da Disciplina
(LP2) Tópico 00 - Apresentação da DisciplinaFabricio Narcizo
 
(ED1) Tópico 00 - Apresentação da Disciplina
(ED1) Tópico 00 - Apresentação da Disciplina(ED1) Tópico 00 - Apresentação da Disciplina
(ED1) Tópico 00 - Apresentação da DisciplinaFabricio Narcizo
 
(PDI) Tópico 00 - Apresentação da Disciplina
(PDI) Tópico 00 - Apresentação da Disciplina(PDI) Tópico 00 - Apresentação da Disciplina
(PDI) Tópico 00 - Apresentação da DisciplinaFabricio Narcizo
 
01 aula 01032012
01   aula 0103201201   aula 01032012
01 aula 01032012atsileg
 
Aula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.ppt
Aula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.pptAula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.ppt
Aula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.pptssuserd654cb1
 
2019-2 - BD I - Aula 01 A - Plano De Ensino
2019-2 - BD I - Aula 01 A - Plano De Ensino2019-2 - BD I - Aula 01 A - Plano De Ensino
2019-2 - BD I - Aula 01 A - Plano De EnsinoRodrigo Kiyoshi Saito
 
Atpc 29 de setembro site
Atpc 29 de setembro  siteAtpc 29 de setembro  site
Atpc 29 de setembro siteWilson Barbieri
 
Aula Inaugural - Programação Imperativa
Aula Inaugural - Programação ImperativaAula Inaugural - Programação Imperativa
Aula Inaugural - Programação ImperativaIvna Valença
 
Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00Arthur Emanuel
 
I relatório da intervenção na turma de automação
I relatório da intervenção na turma de automaçãoI relatório da intervenção na turma de automação
I relatório da intervenção na turma de automaçãoCarlos Melo
 
Pesquisa Operacional
Pesquisa OperacionalPesquisa Operacional
Pesquisa Operacionalssuser18babe
 
Francimar Maciel - Casos práticos de usabilidade
Francimar Maciel - Casos práticos de usabilidadeFrancimar Maciel - Casos práticos de usabilidade
Francimar Maciel - Casos práticos de usabilidadeINdT
 
Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...
Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...
Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...inovaDay .
 
01 aula 01032012
01   aula 0103201201   aula 01032012
01 aula 01032012atsileg
 

Semelhante a Estrutura de Dados II - Apresentação da Disciplina (20)

Linguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da DisciplinaLinguagem de Programação II - Apresentação da Disciplina
Linguagem de Programação II - Apresentação da Disciplina
 
Técnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da DisciplinaTécnicas de Programação Aplicada III - Apresentação da Disciplina
Técnicas de Programação Aplicada III - Apresentação da Disciplina
 
(LP2) Tópico 00 - Apresentação da Disciplina
(LP2) Tópico 00 - Apresentação da Disciplina(LP2) Tópico 00 - Apresentação da Disciplina
(LP2) Tópico 00 - Apresentação da Disciplina
 
(ED1) Tópico 00 - Apresentação da Disciplina
(ED1) Tópico 00 - Apresentação da Disciplina(ED1) Tópico 00 - Apresentação da Disciplina
(ED1) Tópico 00 - Apresentação da Disciplina
 
1. apresentação
1. apresentação1. apresentação
1. apresentação
 
(PDI) Tópico 00 - Apresentação da Disciplina
(PDI) Tópico 00 - Apresentação da Disciplina(PDI) Tópico 00 - Apresentação da Disciplina
(PDI) Tópico 00 - Apresentação da Disciplina
 
01 aula 01032012
01   aula 0103201201   aula 01032012
01 aula 01032012
 
Aula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.ppt
Aula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.pptAula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.ppt
Aula_01_-_Apresenta_o_e_Programa_da_Disciplina_2012-1.ppt
 
2019-2 - BD I - Aula 01 A - Plano De Ensino
2019-2 - BD I - Aula 01 A - Plano De Ensino2019-2 - BD I - Aula 01 A - Plano De Ensino
2019-2 - BD I - Aula 01 A - Plano De Ensino
 
Apresentação Projeto de Redes
Apresentação Projeto de RedesApresentação Projeto de Redes
Apresentação Projeto de Redes
 
Atpc 29 de setembro site
Atpc 29 de setembro  siteAtpc 29 de setembro  site
Atpc 29 de setembro site
 
Aula Inaugural - Programação Imperativa
Aula Inaugural - Programação ImperativaAula Inaugural - Programação Imperativa
Aula Inaugural - Programação Imperativa
 
Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00
 
I relatório da intervenção na turma de automação
I relatório da intervenção na turma de automaçãoI relatório da intervenção na turma de automação
I relatório da intervenção na turma de automação
 
Aula 1 apresentação
Aula 1   apresentaçãoAula 1   apresentação
Aula 1 apresentação
 
Plano de Ensino - Bando de Dados
Plano de Ensino - Bando de DadosPlano de Ensino - Bando de Dados
Plano de Ensino - Bando de Dados
 
Pesquisa Operacional
Pesquisa OperacionalPesquisa Operacional
Pesquisa Operacional
 
Francimar Maciel - Casos práticos de usabilidade
Francimar Maciel - Casos práticos de usabilidadeFrancimar Maciel - Casos práticos de usabilidade
Francimar Maciel - Casos práticos de usabilidade
 
Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...
Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...
Makerspaces universitários: a experiência do INOVALAB@POLI e perspectivas no ...
 
01 aula 01032012
01   aula 0103201201   aula 01032012
01 aula 01032012
 

Mais de Daniel Arndt Alves

Mais de Daniel Arndt Alves (19)

Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Selection Sort
Selection SortSelection Sort
Selection Sort
 
Insertion Sort
Insertion SortInsertion Sort
Insertion Sort
 
Bubble Sort
Bubble SortBubble Sort
Bubble Sort
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
Java RMI
Java RMIJava RMI
Java RMI
 
Java Platform, Enterprise Edition
Java Platform, Enterprise EditionJava Platform, Enterprise Edition
Java Platform, Enterprise Edition
 
Conceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos DistribuidosConceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos Distribuidos
 
Exercicios - Java Swing Listeners
Exercicios - Java Swing ListenersExercicios - Java Swing Listeners
Exercicios - Java Swing Listeners
 
Gerenciadores de Layout
Gerenciadores de LayoutGerenciadores de Layout
Gerenciadores de Layout
 
Hiearquia Window
Hiearquia WindowHiearquia Window
Hiearquia Window
 
Exercicios - Java Swing
Exercicios - Java SwingExercicios - Java Swing
Exercicios - Java Swing
 
Java AWT
Java AWTJava AWT
Java AWT
 
Java Swing
Java SwingJava Swing
Java Swing
 
Técnicas de Programação Aplicada III - Plano de Ensino
Técnicas de Programação Aplicada III - Plano de EnsinoTécnicas de Programação Aplicada III - Plano de Ensino
Técnicas de Programação Aplicada III - Plano de Ensino
 
Linguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de EnsinoLinguagem de Programação II - Plano de Ensino
Linguagem de Programação II - Plano de Ensino
 
Novos Recursos do Moodle 2
Novos Recursos do Moodle 2Novos Recursos do Moodle 2
Novos Recursos do Moodle 2
 
Novos Recursos do Moodle 2.0 (Paper)
Novos Recursos do Moodle 2.0 (Paper)Novos Recursos do Moodle 2.0 (Paper)
Novos Recursos do Moodle 2.0 (Paper)
 
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e AdministrativosModelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
Modelos de Integração Moodle - Sistemas de Gestão Acadêmicos e Administrativos
 

Estrutura de Dados II - Apresentação da Disciplina

  • 1. Universidade Presbiteriana Mackenzie Aula 1: Apresentação da Disciplina Prof. Ms. Daniel Arndt Alves Faculdade de Computação e Informática Estrutura de Dados II Apresentação da Disciplina 1Daniel Arndt Alves
  • 2. 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
  • 3. Tópicos da Aula • Padrões de Nomenclatura • Um Mau Layout • Um Bom Layout Apresentação da Disciplina 3Daniel Arndt Alves
  • 4. 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
  • 5. Professor • Mackenzie – Professor PPI da Faculdade de Computação e Informática – Administrador do Mackenzie Virtual (Moodle) – http://ead.mackenzie.br/mackenzievirtual/ – Administrador do Cluster de Pesquisa em Computação Evolutiva e Autômatos Celulares – http://ecca.mackenzie.br/ Apresentação da Disciplina 5Daniel Arndt Alves
  • 6. Objetivos • Cognitivos – Aprender os fundamentos de Estrutura de Dados e sua aplicações – Analisar estratégias de implementação destas Estruturas de Dados – Entender e analisar a eficiência destas estruturas Daniel Arndt Alves Apresentação da Disciplina 6
  • 7. Objetivos • Habilidades – 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 Daniel Arndt Alves Apresentação da Disciplina 7
  • 8. Objetivos • Atitudes – Ter consciência da importância da avaliação do desempenho das principais estruturas de dados para aplicações científicas e/ou comerciais – Valorizar o reuso de código – Fazer o uso do trabalho cooperativo para desenvolvimento de tarefas complexas Daniel Arndt Alves Apresentação da Disciplina 8
  • 9. 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
  • 10. 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
  • 11. 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
  • 12. Regras • Pontualidade – O Professor dará o melhor de si para se apresentar no horário de iní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
  • 13. Regras • Presença – A chamada será realizada no início de cada 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
  • 14. Regras • Presença – Os Alunos deverão gerenciar a sua cota 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
  • 15. Regras • Presença – O Professor não dará presença a um aluno ausente, qualquer que seja a razão. Abonos de faltas deverão ser discutidos diretamente com a Secretaria Geral da Universidade. Daniel Arndt Alves Apresentação da Disciplina 15
  • 16. Regras • Entrega de Trabalhos – Os trabalhos devem ser entregues na data determinada pelo Professor. Daniel Arndt Alves Apresentação da Disciplina 16
  • 17. Regras • Entrega de Trabalhos – Atrasos poderão eventualmente ser considerados em casos de doença, sempre fundamentada em atestado médico e requerimento apresentado à Secretaria da FCI, no dia subsequente à alta médica Daniel Arndt Alves Apresentação da Disciplina 17
  • 18. Regras • Datas das Provas – As datas definidas para as provas desde o início do curso, não serão alteradas em hipótese alguma. Daniel Arndt Alves Apresentação da Disciplina 18
  • 19. 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 atestado médico e requerimento apresentado à Secretaria da FCI. Daniel Arndt Alves Apresentação da Disciplina 19
  • 20. Regras • Datas das Provas – O Aluno poderá, eventualmente, efetuar a prova em outro dia, a ser determinado pelo professor, nas seguintes 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 requerimento apresentado à Secretaria da FCI. Daniel Arndt Alves Apresentação da Disciplina 20
  • 21. Regras • Datas das Provas – O requerimento deve ser apresentado à Secretaria da FCI no dia subsequente à ocorrência. Daniel Arndt Alves Apresentação da Disciplina 21
  • 22. Notas • Haverá 1 prova parcial (P1), Listas de Exercí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
  • 23. Notas • A nota de Participação será composta pelos 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
  • 24. Notas • O desempenho nas aulas será registrado no Ambiente Moodle, no espaço dedicado à disciplina de Teoria. • O aluno poderá consultar a qualquer momento suas notas parciais através do link “notas” no ambiente Moodle. Daniel Arndt Alves Apresentação da Disciplina 24
  • 25. Comunicados & Avisos • Todos os comunicados e avisos referentes à 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
  • 26. Comunicados & Avisos • Todas as atividades estarão disponíveis no Ambiente Moodle (Mackenzie Virtual). • O Aluno deverá postar seus exercícios e trabalhos somente no Ambiente Moodle (Mackenzie Virtual) Daniel Arndt Alves Apresentação da Disciplina 26
  • 27. 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
  • 28. Padrões de Nomenclatura Daniel Arndt Alves Apresentação da Disciplina 28 “Programming is best regarded as the process of creating works of literature, which are meant to be read.” Donald E. Knuth, Literate Programming
  • 29. 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 code that humans can understand.” Martin Fowler, Refactoring, Improving the Design of Existing Code
  • 30. 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
  • 31. 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
  • 32. 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
  • 33. 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
  • 34. Apresentação da Disciplina 34Daniel Arndt Alves
  • 35. Apresentação da Disciplina 35Daniel Arndt Alves
  • 36. 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