Para que um computador faça qualquer coisa, você precisa de um programa de computador. Para criar um programa de computador, você tem de informar ao computador, passo a passo, exatamente o que você espera que ele faça. O computador então "executa" o programa, seguindo cada passo mecanicamente para atingir o objetivo final.

Quando você "diz" ao computador o que fazer, você também deve escolher como ele vai fazer. É aí que entram os algoritmos de computador. Algoritmo é a técnica básica usada para fazer o trabalho. Vamos acompanhar um exemplo para ajudar a entender o conceito de algoritmo.

Digamos que você tem um amigo chegando ao aeroporto e ele precisa ir do aeroporto até sua casa. Aqui estão quatro algoritmos diferentes que você poderia dar a seu amigo para ele chegar à casa:

  • o algoritmo do táxi:
    1. vá para o ponto de táxi;
    2. entre em um táxi;
    3. dê meu endereço ao motorista.
  • o algoritmo "ligue-me":
    1. quando seu avião chegar, ligue para meu celular;
    2. espere do lado de fora do terminal de bagagens.
  • O algoritmo "alugue um carro":
    1. pegue o circular até o aluguel de automóveis;
    2. alugue um carro;
    3. siga as instruções para chegar até minha casa.
  • O algoritmo do ônibus:
    1. fora do terminal de bagagens, pegue o ônibus número 70;
    2. faça uma baldeação para o ônibus 14 na Rua Dom Pedro;
    3. desça na rua Aroeira;
    4. ande duas quadras para norte até minha casa.
Todos esses quatro algoritmos atingem exatamente a mesma meta, mas cada um deles o faz de modo completamente diferente. Cada algoritmo também possui um custo e um tempo de viagem diferentes. O táxi, por exemplo, é a maneira mais rápida e cara. Já o ônibus é definitivamente mais barato, mas bem mais lento. Você escolhe o algoritmo com base nas circunstâncias.

Na programação de computadores, freqüentemente há diversos caminhos, ou algoritmos, para cumprir qualquer tarefa determinada. Cada algoritmo tem vantagens e desvantagens em situações diferentes. A ordenação é uma área onde se fez muita pesquisa, porque os computadores gastam muito tempo classificando listas. Aqui estão cinco algoritmos diferentes que são usados na ordenação:

  • ordenação por caixas
  • ordenação por mistura
  • ordenação por bolha
  • ordenação por aparência
  • ordenação rápida
Se você tem um milhão de valores inteiros entre 1 e 10 e precisa ordená-los, a ordenação por caixa é o algoritmo certo a ser usado. Se você tem um milhão de títulos de livros, o método ordenação rápida poderia ser o melhor algoritmo. Conhecendo os pontos fortes e fracos dos diferentes algoritmos, você escolhe o melhor para a tarefa que tem em mãos.