Aula 01 ANALISE DE ALGORITMO Introdu o
Professor: Thiago de Medeiros Gualberto
Algoritmos, Programas e
Estrutura de Dados
Algoritmos, Programas e Estrutura de Dados
Os algoritmos fazem parte do dia-a-dia das pessoas. Exemplos de algoritmos: instruções para o uso de medicamentos, indicações de como montar um aparelho, uma receita de culinária.
Seqüência de ações executáveis para a obtenção de uma solução para um determinado tipo de problema.
Segundo Dijkstra, um algoritmo corresponde a uma descrição de um padrão de comportamento, expresso em termos de um conjunto finito de ações.
Executando a operação a + b percebemos um padrão de comportamento, mesmo que a operação seja realizada para valores diferentes de a e b.
Estrutura de Dados
Estruturas de dados e algoritmos estão intimamente ligados: não se pode estudar estruturas de dados sem considerar os algoritmos associados a elas, assim como a escolha dos algoritmos em geral depende da representação e da estrutura dos dados.
Estruturas de dados são formas genéricas de se estruturar informação de modo a serem registradas e processadas pelo computador.
Exemplo:
Lista, pilha, fila, vetores, árvores, grafos, etc...
Contudo estas só adquirem significado quando associadas a um conjunto de operações, que visam, de um modo geral, manipulá-las (algoritmos).
Estrutura de Dados
Estruturas de dados são o “coração” de qualquer programa mais sofisticado. A seleção de um tipo correto de estrutura de dados fará enorme diferença na complexidade da implementação resultante. A escolha da representação dos dados correta facilitará em muito a construção de um programa, enquanto que a escolha de uma representação errada custara um tempo enorme de codificação, alem de aumentar a complexidade de compreensão do código.
Escolha da Representação dos Dados
A escolha da representação dos dados é determinada, entre outras, pelas operações a serem realizadas sobre os dados.
Considere a operação de adição:
Para pequenos números, uma boa representação