• Entrega Imediata
  • Frete Grátis

Livro Impresso

Como Pensar Sobre Algoritmos

  • ISBN:

    9788521617310

  • Edição: 1|2010
  • Editora: LTC

Edmonds

De: R$ 143,00 Por: R$ 114,40
ou em até 2x de R$ 57,20
< >
O objetivo nesta obra não é apresentar o pacote completo, bem embrulhadinho e limpo, mas percorrer vagarosamente e com profundidade cada etapa do desenvolvimento dos algoritmos. Foram adicionados muitos inícios falsos, na esperança de que isso ajudará ...

Conteúdo relacionado

  • Formato: Impresso
  • Páginas: 300
  • Publicação: 22/02/2010
  • Capa: Brochura
  • Peso: 0,71 kg
  • Dimensões: 21 X 28

O objetivo nesta obra não é apresentar o pacote completo, bem embrulhadinho e limpo, mas percorrer vagarosamente e com profundidade cada etapa do desenvolvimento dos algoritmos. Foram adicionados muitos inícios falsos, na esperança de que isso ajudará os estudantes a desenvolverem algoritmos por conta própria. As pessoas que desenvolvem algoritmos têm diferentes maneiras de pensar, além de uma intuição que, de modo geral, não é ensinada. A premissa básica de Como Pensar sobre Algoritmos é que isso não pode ser ensinado, mas tem que ser descoberto individualmente. Este livro tenta ensinar os estudantes a pensar como quem projeta algoritmos. Jeff Edmonds escreveu um livro divertido, organizado em blocos, cada um contendo um título e um único pensamento. O autor concentra-se na estrutura e na demonstração de correção de meta-algoritmos iterativos e recursivos e, dentro desses, de meta-algoritmos gulosos e de programação dinâmica. Ao aprender esses e suas demonstrações de correção, pode-se compreender facilmente a maioria dos algoritmos. O desafio é que pensar sobre meta-algoritmos exige bastante abstração. São apresentados analogias, paradigmas e diferentes notações, dentro dos quais é possível desenvolver e pensar sobre algoritmos.

 

Parte I. Algoritmos iterativos e invariantes de laço

1. Algoritmos iterativos: medidas de progresso e invariantes de laço

2. Exemplos do uso de invariantes de laço com entrada maior

3. Tipos de dados abstratos

4. Diminuição do espaço de busca: busca binária

5. Algoritmos de ordenação iterativos

6. O Algoritmo de Euclides para o MDC

7. O invariante de laço para cotas inferiores

 

Parte II. Recorrência

8. Abstrações, técnicas e teoria

9. Alguns exemplos simples de algoritmos recursivos

10. Recorrência em árvores

11. Imagens

12. Análise com gramáticas livres de contexto

 

Parte III. Problemas de otimização

13. Definição de problemas de otimização

14. Algoritmos de busca em grafos

15. Fluxo em redes e programação linear

16. Algoritmos gulosos

17. Recursividade com retrocesso

18. Algoritmos de programação dinâmica

19. Exemplos de programação

20. Reduções e NP-Completeza

21. Algoritmos aleatórios

 

Parte IV. Apêndice

22. Quantificadores existenciais e universais

23. Complexidade temporal

24. Logaritmos e exponenciais

25. Crescimento assintótico

26. Aproximações de somas tornadas fáceis

27. Relações de recorrência

28. Uma demonstração formal de correção

 

Parte V. Soluções dos exercícios

 

Conclusão

Índice

 

Jeff Edmonds é professor associado do Departamento de Ciência da Computação da York University, em Toronto, Canadá. Faz parte do Theory of Computing Group, que usa a matemática para provar teoremas sobre computação. Graduou-se em Matemática pela University of Waterloo e conseguiu títulos de mestre e doutor em Ciência da Computação pela University of Toronto. Possui pós-doutorado pelo International Computer Science Institute, em Berkeley, Califórnia.