Prévia do material em texto
<p>Apresentação da Disciplina</p><p>Algoritmos e Estruturas de Dados</p><p>Prof. Virgílio Borges de Oliveira</p><p>virgilio@cotemig.com.br</p><p>Algoritmos e Estruturas de Dados</p><p> Disciplina do núcleo de Ciência da Computação</p><p> Parte do currículo base dos cursos de Análise e</p><p>Desenvolvimento de Sistemas, Sistemas de Informação e</p><p>Ciência da Computação</p><p> Pertence ao Módulo 2 (2º semestre)</p><p>Programação de</p><p>Computadores</p><p>Algoritmos e</p><p>Estruturas de Dados</p><p>Módulo 1 Módulo 2</p><p>Algoritmos e</p><p>Estruturas de Dados II</p><p>Somente no curso de SI e CC</p><p>Objetivos da disciplina</p><p> Capacitar o aluno a analisar algoritmos</p><p> Entender e aplicar estruturas de dados mais complexas</p><p>na resolução de problemas computacionais</p><p> Apresentar as principais técnicas para a implementação</p><p>de estruturas de dados em linguagens de programação</p><p> Apresentar as principais técnicas de ordenação e</p><p>pesquisa em memória primária</p><p>Algoritmos e Estruturas de Dados</p><p>Fonte: https://dev.to/adavidoaiei/fundamental-data-structures-and-algorithms-in-c-4ocf</p><p>https://dev.to/adavidoaiei/fundamental-data-structures-and-algorithms-in-c-4ocf</p><p>Cronograma</p><p> Apresentação da Disciplina</p><p> Revisão: Programação de Computadores</p><p> Linguagens compiladas, interpretadas e híbridas</p><p> Tipos primitivos</p><p> Operadores</p><p> Estruturas condicionais e de repetição</p><p> Arranjos</p><p>Cronograma</p><p> Introdução à Programação Orientada a Objetos (POO)</p><p> Classes e objetos</p><p> Atributos e métodos</p><p> Métodos de acesso: set e get</p><p> Construtores</p><p> Tipos Abstratos de Dados</p><p> Pilhas</p><p> Filas</p><p> Listas Encadeadas</p><p>Cronograma</p><p> Análise de Complexidade de Algoritmos</p><p> Complexidade de tempo de execução</p><p> Classes de comportamento assintótico (notação O)</p><p> Métodos de Ordenação em Memória Principal</p><p> Bolha, Seleção e Inserção</p><p> ShellSort</p><p> HeapSort</p><p> QuickSort</p><p> MergeSort</p><p>Cronograma</p><p> Árvores Binárias</p><p> Tabelas de Dispersão (Hash)</p><p>Distribuição de Pontos</p><p> Atividades Avaliativas: 70 pontos</p><p> 1ª Prova: 20 pontos (Revisão de PC, Introdução à POO e Tipos</p><p>Abstratos de Dados)</p><p> Seminário – Métodos de Ordenação: 10 pontos</p><p> 2ª Prova: 20 pontos (Análise de Complexidade e Ordenação)</p><p> Listas de exercícios: 6 pontos</p><p> Práticas: 14 pontos</p><p> Prova Final: 30 pontos</p><p> Árvores Binárias e Tabelas de Dispersão (Hash)</p><p>Bibliografia Básica</p><p>Projeto de Algoritmos com Implementações em Java e C++</p><p>Nivio Ziviani</p><p>http://www2.dcc.ufmg.br/livros/algoritmos-java/transparencias.php</p><p>http://www2.dcc.ufmg.br/livros/algoritmos-java/transparencias.php</p>