O conceito de um "algoritmo" é fundamental para toda a ciência da computação e programação. Dito de forma simples, um algoritmo é um conjunto de instruções que podem ser usados para resolver um problema. Figura 1.1 contém um algoritmo simples que você pode usar na vida cotidiana. Este algoritmo é usado no cozimento e é escrito de uma forma que a maioria das pessoas podem entender e seguir. Ele é usado para fazer biscoitos, bolos, muffins, e muitos outros produtos assados.
Figura 1.1. 1. Misture a manteiga em temperatura ambiente e do açúcar. Misture até formar um creme.
2. Adicione os ovos com o creme de manteiga e misture bem. 3. Em outra tigela, misture os ingredientes líquidos e misture. 4. Peneire a farinha e outros ingredientes secos. 5. Alternadamente adicionar os ingredientes secos e líquidos para a mistura de manteiga de ovo. Misture apenas o suficiente para combinar
Figura 1.1:. O "método desnatar": um algoritmo todos os dias. dando aulas de culinária em cursos cmpt.) Ainda assim, o algoritmo na Figura 1.1 tem muito em comum com os algoritmos vamos estar a olhar para este curso.
Nós estamos mais interessados nos tipos de algoritmos que podem ser completados por computadores. Nós vamos gastar muito tempo neste curso projetar algoritmos e ter o computador completá-los para nós
Aqui está uma definição de "algoritmo" que a maioria dos cientistas da computação pode viver com:. [Anany Levitin, Introdução ao desenho e Análise de Algoritmos, p. 3] Um algoritmo é uma sequência de instruções inequívocas para solv- ing um problema, ou seja, para a obtenção de uma saída requerida para qualquer entrada imate legit- em uma quantidade finita de tempo.
Existem algumas palavras que você deve observar sobre a definição: • inequívoca: Quando você lê um algoritmo, não deve haver nenhuma questão sobre o que deve ser feito. É este o caso na Figura 1.1? Se você entender termos de cozinha como "claro e macio" e "peneirar Gether que-", então provavelmente você pode acompanhar a maior parte dessa receita. Você pode ter algum problema com o último passo: você deveria "alternadamente" adicione os ingredientes secos e molhados.
Isso significa que você deve fazer seco molhado-seco? Dry-wet-dry-wet-dry-wet? Quantas adições você deve fazer? Receitas em livros de receitas são muitas vezes escritos com pequenas ambigüidades como esta ou porque não importa o que você faz ou o autor assume que o leitor vai saber o que fazer. Para o registro, a co