ALGORITMOS E ESTRUTURAS DE DADOS

2 / ALGORITMOS E ESTRUTURAS DE DADOS

Os objetivos específicos deste capitulo são:

Fornecer o conceito de algoritmo e estrutura de dados.
Introduzir as estruturas básicas de controle.
Apresentar a programação estruturada como metodologia para desenvolvimento de
algoritmos.

O texto a seguir fornece uma definição de algoritmo e, através dos conceitos básicos de
ação, evento, estado, processo, mostra como pode ser extra ido um padrão de comportamento
de um relato para ser descrito através de um algoritmo. Os aspectos estéticos e dinâmicos da
representação de um algoritmo são enfocados.
As estruturas básicas de controle: delimitador de ações, sequência de ações, alternativa
simples e repetição são introduzidas através de exemplos.
São apresentadas as qualidades desejadas de um bom algoritmo e para isto a metodologia
e técnicas de programação estruturada e refinamentos sucessivos são discutidas.
Finalmente, são levantados os problemas da má utilização de comandos-desvio (GOTO),
causa principal da desestruturação de programas.
1.1 O CONCEITO DE ALGORITMO E AS ESTRUTURAS BÁSICAS DE CONTROLE
O conceito central da programação e da ciência da computação é o de a/goritmo. Progra-
mar é basicamente construir algoritmos. Wirth apresenta a programação estruturada como ”a arte
ou técnica de construir e formular algoritmos de uma forma sistemática”. Programas são – segun-
do Wirth – “formulações concretas de algoritmos abstratos, baseados em representações e
estruturas específicas de dados”.
Nesta definição aparece o outro aspecto fundamental da construção de programas: as
estruturas de dados usadas no algoritmo para representar as informações do problema a ser
resolvido. De fato, no processo de construção de programas, a formulação do algoritmo e a
definição das estruturas de dados a serem usadas estão intimamente ligadas. A tal ponto, que
“decisões sobre a estruturação dos dados não podem ser feitas sem conhecimento dos algo-
ritmos aplicados a eles, e vice-versa: a estrutura e a escolha dos algoritmos depende muitas
vezes fortemente da estrutura dos dados”.
Num algoritmo (e em particular num programa) devemos distinguir claramente dois
aspectos complementares: um aspecto estático e um aspecto dinâmico.
A formulação de um algoritmo geralmente consiste em um texto contendo comandos
(instruções) que devem ser executados numa ordem prescrita. Esse texto é uma representação
concreta do algoritmo e tem um caráter evidentemente estático, atemporal, expandido somente
no espaço (da folha de papel).
Por outra parte este texto não nos interessa em si, mas pelos efeitos que pode evocar
sua execução no tempo, dado um conjunto de “valores iniciais”. Cada execução de um algo-
ritmo é um evento dinâmico, evoluindo no tempo.
Click aqui para a próxima aula

Hacker russo rouba 32 milhões de dados no Twitter

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima