Algoritmos e Estruturas de Dados Prof. Mauro L. C. Silva 1/10
Ciência da Computação Estudo de Algoritmos uma das atividades principais Ênfase no Estudo dos Dados: Armazenamento Manipulação Refinamento Estrutura para representação 2/10
Estruturação da Informação Qualquer área da computação: algoritmos + estruturas de dados Definição (algoritmo): processo sistemático para a resolução de um problema. Aspectos Básicos 1. Correção: consiste em verificar a exatidão do método, o que é realizado através de uma prova matemática. 2. Análise: visa à obtenção de parâmetros que possam avaliar a eficiência do algoritmo em termos do tempo de execução e memória ocupada. 3/10
Entrada: informações inicialmente conhecidas e que permitem encontrar a solução do problema. Saída: resultado do problema a partir de uma entrada. Entrada Manipulação de Dados Saída Definição 2 (algoritmo): procedimento que transforma dados em informação. 4/10
Definição de Algoritmo (3) Algoritmo: é um método para resolver um problema. Propriedades: a. deve ser correto b. possuir passos concretos c. não possuir ambigüidades d. possuir número finito de passos e. deve terminar 5/10
Definição de Algoritmo (3) Algoritmo - conceito intuitivo para ajudar pessoas a expressar soluções de problemas Programas - expressar algoritmos numa linguagem formalmente definida Computação Numérica x Computação Comercial computation intensive x data intensive 3a Geração - Processamento Gráfico Objetos Geométricos, Figuras Interface com usuário CAD-Processamento de Imagens/Reconhecimento de Padrões 6/10
Desenvolvimento de Programas (etapas constituintes) 1. Especificação do problema: entendimento das relações existentes entre os dados que são relevantes para o problema (estruturação lógica). 2. Projeto em alto nível: que transformações serão efetuadas no algoritmo para resolver o problema. 3. Análise de alternativas. 4. Refinamento e codificação: refinar o item 2 em termos dos mecanismos disponíveis na linguagem em que o programa será codificado. 7/10
5. Verificação de Comportamento: avaliar o programa obtido para vermos se satisfaz as especificações do problema e quanto ao desempenho (tempo e memória), modificando-o se for o caso. Três pontos importantes 1. Estruturas de Dados retrata as relações lógicas entre os dados (como um modelo matemático para a realidade do Problema). 2. Operações manipulam estas estruturas de dados e as transformam. 8/10
3. Estrutura de representação precisamos armazenar os dados na memória do computador através de uma estrutura de representação. Programa: representação de um algoritmo que manipula representações de dados. Conclusão Escolha de estruturas de dados, suas operações e representações podem ser fatores decisivos na eficiência do programa final. 9/10
Atividade UNICEUMA Centro Universitário do Maranhão Uma das partes de um Sistema Acadêmico é calcular a Média de um aluno em uma disciplina. O Aluno deve ser matriculado em uma disciplina e realizar as seguintes provas: 1 Prova primeira prova regimental 2 Prova segunda prova regimental Caso a Média do Aluno não seja igual ou superior a 7, o aluno é considerado reprovado. Caso contrário o Aluno está aprovado. Se o Aluno estiver reprovado, este têm direito a outra avaliação denominado, Substitutiva. A nota da prova substitutiva substituirá a menor nota entre a 1 Nota e 2 Nota. É calculado novamente a Média do Aluno. Caso a Média do Aluno não seja igual ou superior a 7, o aluno é considerado reprovado. Caso contrário o Aluno está aprovado. Se o Aluno estiver reprovado, este têm direito a outra avaliação denominado, Prova Final. A nota da prova final, somada com as médias finais deverá somar 12 pontos. 10/10