Referência inquestionável em se tratando de competições de informática, o livro Programming Challenges alia teoria e prática para abordar vários tópicos interessantes na computação. Saiba como ele pode melhorar suas habilidades de programação e onde obtê-lo.
Sobre o livro
Programming Challenges, de Steven Skiena e Miguel Revilla pela editora Springer, serve como uma verdadeira bíblia das competições de informática. A obra expõe desde técnicas e conceitos básicos até algoritmos sofisticados, passando por teoria dos grafos, teoria dos números e análise combinatória.
Qualquer pessoa com alguma experiência nos fundamentos de programação pode aproveitar o conteúdo: estudantes, professores, instrutores de times de competição ou mesmo profissionais de T.I. A linguagem é bastante clara e há relativamente pouco rigor matemático comparado a outros livros de algoritmos, então fica acessível a leitores de todos os níveis de educação.
Estrutura do livro
A obra cobre os seguintes tópicos, não necessariamente nessa ordem:
- Tipos de dados elementares e estrutura de dados
- Manipulação de strings
- Algoritmos de ordenação
- Teoria dos grafos
- Aritmética de alta precisão
- Geometria computacional
- Programação dinâmica
- Backtracking
- Relações de recorrência e análise combinatória
Em cada capítulo há uma exposição teórica acompanhada por implementações de algoritmos em C, problemas ao estilo das competições tradicionais e dicas que podem ajudar durante a resolução dos problemas. Adicionalmente, às vezes também são sugeridos materiais de estudo mais específicos aos interessados em um determinado tópico.
Sistema de avaliação automático
Um dos principais diferenciais do livro é seu vínculo com dois sistemas automáticos: o juiz disponível no site do Programming Challenges e o da Universidad de Valladolid. Todos os problemas do livro estão disponíveis nesses sites e os programas podem ser submetidos ao juiz para serem avaliados imediatamente, como em uma competição tradicional.
Claro, nada impede que você pule direto aos problemas e tente resolver com o que você sabe. Quando sentir necessidade de um direcionamento, consulte o livro.
Tradução
Infelizmente a obra ainda não conta com uma edição em português, mas o Helton Duarte fez uma tradução parcial de alguns capítulos em seu blog. Confira a série de aulas "Programando melhor".
Leituras adicionais
Aí vão alguns links que também podem ser úteis:
Introdução ao Project Euler - Excelente site de problemas envolvendo computação e matemática.
Lógica de programação - O básico do básico para dar seus primeiros passos.


0 comentários:
Postar um comentário