Algoritmos e Estruturas de Dados 2017.1

Algoritmos e Estruturas de Dados 2017.1

 

 

 

 

 

 

 

 

 

Sobre a Disciplina

Estudo da análise de complexidade de algoritmos e utilização otimizada dos diversos algoritmos e
estruturas de dados adotadas na academia e na indústria para o desenvolvimento de
software, considerando os problemas a serem resolvidos ou otimizados, e também o contexto no qual
ocorre tais problemas, envolvendo atividades de programação de software.

 

Conteúdo Programático

  1. Análise de Algoritmos.
    1.1. Análise do Pior Caso;
    1.2. Notação Assintótica;
  2. Estruturas de Dados.
    2.1. Listas ligadas: simples, duplas, circulares;
    2.2. Alocação dinâmica de memória;
    2.3. Pilhas, Filas: alocação estática e dinâmica;
    2.4. Árvores: binárias;
    2.4.1. Construção recursiva de árvores;
    2.4.2. Passeio em árvores: préfixo, pósfixo e central;
    2.5. Grafos: orientados e não-orientados;
    2.6. Aplicações.
  3. Pesquisas de Dados.
    3.1. Sequencial e Binária;
    3.2. Árvores: busca (largura e profundidade), inserção e remoção; balanceamento;
    3.3. Grafos: busca, árvore geradora;
    3.4. Aplicações.
  4. Conceitos Básicos de NP-Completude
    4.1. Problemas NP-completos;
    4.2. Redutibilidade;
    4.3. Aplicações.
  5. Projeto de Desenvolvimento com Estruturas de Dados Avançadas

Mais detalhes no Plano de Ensino da Disciplina.

 

Cronograma de Aulas

DataAtividadeObservações
02/05Semana de Intregação da UASTNão haverá aula.
09/05Aula normal--
16/05Aula normal--
23/05Aula normal--
30/05Aula normal--
06/06Aula normal--
13/06Colação de Grau Unificada 2016.2 UASTNão haverá aula.
20/06Aula normal--
27/06Aula normal--
04/07Atividade Avaliativa1a VA
11/07Aula normal--
18/07Aula normal--
25/07Aula normal--
01/08Aula normal--
08/08Aula normal--
15/08Atividade Avaliativa2a VA
29/08Atividade Avaliativa3a VA
05/09Atividade AvaliativaVA Final
  • Observações:
    • O conteúdo desta tabela é baseado no Plano de Ensino da disciplina.
    • É dever do aluno fazer o acompanhamento das mudanças de datas.
    • As alterações de datas estão subordinadas às alterações do Calendário Acadêmico da UFRPE.

 

Avaliação

Entendendo o processo avaliativo como um processo sistemático e não apenas a geração de um resultado final, será utilizada uma avaliação continuada ao longo de todo o período letivo, respeitadas as datas previstas no Calendário Acadêmico da UFRPE. Para aplicação desta avaliação, serão utilizados os
instrumentos: avaliações de aprendizagem (provas), projetos individuais ou em grupo, e observações
sistemáticas.

Para calcular a nota de cada verificação da aprendizagem, será utilizada a seguinte abordagem:
– 1a Verificação de Aprendizagem: 100% escrita;
– 2a Verificação de Aprendizagem: 100% escrita;
– 3a Verificação de Aprendizagem: 100% projeto prático;
– Verificação de Aprendizagem Final: 100% prova escrita

Regras para Aprovação na Disciplina:
  • Para ser Aprovado por Média, o aluno deverá obter na Média da Disciplina o valor mínimo 7.0 (sete).
    • Se o aluno comparecer às três VAs, serão consideradas somente as duas melhores notas para o
      cálculo da média.
  • Aqueles que não conseguirem aprovação por média, poderão recorrer à Prova Final, se e somente se
    sua média estiver dentro do intervalo 3.0 <= media < 7.0.

    • Alunos com média da disciplina < 3.0 serão reprovados automaticamente.
    • Se o aluno não comparecer a duas VAs (consecutivas ou não), estará reprovado automaticamente.
  • Para ser Aprovado na Final, o aluno deverá obter na Média Final, o valor mínimo 5.0 (cinco). Este valor
    será obtido calculando a média aritmética da Média da disciplina e Nota da Prova Final.
  • É necessário o comparecimento de, no mínimo, 75% de presença em sala. Acima de 25% de faltas implica em reprovação na disciplina, MESMO que o aluno tenha média su ciente para aprovação.

ATENÇÃO: atividades em que forem detectados plágio ou cópia ou compartilhamento de código-fonte
entre alunos, ou de códigos encontrados na internet, ou ainda de qualquer outra origem em qualquer
uma das listas ou projetos, receberão nota 0.0 (zero.ponto.zero).

  • Datas:
    • 1a VA: 04/07/2017
    • 2a VA: 15/08/2017
    • 3a VA: 29/08/2017
    • Prova Final: 05/09/2017
    • Observação: para todas as avaliações, será aplicado todo o conteúdo estudado até a semana
      anterior à avaliação.

 

Bibliografia

  • Básica:
    • CORMEN, T.H.; LEISERSON, C.E.; RIVEST, R.L.; STEIN, C.. Algoritmos: teoria e prática. Rio de
      Janeiro: Campus, 2002.
    • MIZRAHI, V.V.. Treinamento em linguagem C. São Paulo, SP: Pearson Prentice Hall, 2008.
    • ZIVIANI, N.. Projeto de algoritmos: com implementações em Pascal e C. 2. ed. rev. e ampl. São
      Paulo: Thomson, 2004
  • Complementar:
    • GOODRICH, M.T.; TAMASSIA, R.. Estrutura de dados e algoritmos em Java. 4. ed. Porto Alegre:
      Bookman, 2007
    • LAUREANO, M.. Estrutura de dados com algoritmos e C. Rio de Janeiro: Brasport, 2008.
    • SEDGEWICK, R.; SEDGEWICK, R.. Algorithms in C++. 3rd ed. Reading, Mass.: Addison-Wesley,
      c1998.
    • MANBER, U.. Introduction to algorithms: a creative approach. Reading, Mass.: Addison-Wesley,
      c1989.
    • SALVETTI, D.D.; BARBOSA, L.M.. Algoritmos. São Paulo, SP: Makron Books, 1998.
  • Sistema Integrado de Bibliotecas da UFRPE: http://www.sib.ufrpe.br/

 

Horários de atendimento

  • Segundas, Terças e Quartas: das 15h00 as 18h00
  • Quartas: das 19h00 as 22h00
  • Local: Sala dos Professores do Bloco 2 (Sala 15) ou na Coordenação do Curso (Bloco 1 – Sala 15)
    • Obs.: devido as exigências da Coordenação, é preciso confirmar antes.

 

Material de Aula

  1. Apresentação da Disciplina e Plano de Ensino.
    • Demais materiais serão enviados ao grupo da disciplina.
  2. Ferramentas que serão utilizadas:

 

Links Interessantes

 

Leitura/Vídeos Recomendados