O que são algoritmos?

De modo simples um algoritmo é uma sequência de passos que são executados em determina ordem para solucionar um problema.

Podemos exemplificar um algoritmo como uma receita de bolo, observe o exemplo a seguir:

Ingredientes:

  • 2 xícaras de açúcar
  • 3 xícaras de farinha de trigo
  • 4 colheres de margarina
  • 3 ovos
  • 1 e 1/2 xícara de leite de vaca
  • 1 colher (sopa) bem cheia de fermento em pó

Modo de Preparo:

  1. Bata as claras em neve e reserve
  2. Misture as gemas, a margarina e o açúcar até obter uma massa homogênea
  3. Acrescente o leite e a farinha de trigo aos poucos sem parar de bater
  4. Por último, adicione as claras em neve e o fermento
  5. Despeje a massa em uma forma grande de furo central untada e enfarinhada
  6. Asse em forno médio (180° C), preaquecido, por 40 minutos ou ao furar com um garfo, este saia limpo

No exemplo apresentado percebe-se que há um modo para preparar o bolo (Modo de Preparo), executando um passo de cada vez e em determinada ordem. No entanto, ao alterar a ordem dos passos, não será mais possível preparar o bolo. Nota-se que, pela definição de algoritmo, a receita de bolo está solucionando um problema: fazer um bolo.

Os algoritmos são amplamentes utilizados na computação para solucionar problemas e desenvolver programas. Um algoritmo não é necessariamente um programa, mas sim um conjunto de passos necessários para realizar uma tarefa (Wikipédia).

De acordo com [1] um algoritmo corretamente executado não irá resolver o problema se estiver erroneamente desenvolvido ou caso seja impróprio para a tarefa. Dessa forma, não podemos utilizar um algoritmo para trocar uma lâmpada com a intenção de preparar um bolo.

Os algoritmos são utilizados para tudo, não é nada mais que uma rotina, um processo ou um passo a passo para efetuar alguma tarefa.

[1]Jean Luc Chabert, A History of Algorithms: From the Pebble to the Microchip, Springer Verlag, 1999.