DEV Community

Cover image for Review: Um guia ilustrado de algoritmos para programadores e outros curiosos
Vandemberg
Vandemberg

Posted on

Review: Um guia ilustrado de algoritmos para programadores e outros curiosos

Esse review não é um resumo do livro. É apenas minha opinião, visão e pontos que achei interessante na obra. Assim como assuntos que senti falta ou não gostei da abordagem.

Primeiras impressões

A primeira vista achei que seria um livro semelhante a série de livro "Use a cabeça", ou seja, livros com bastante narrativa, storytelling e ilustrações. Que é um estilo que não curto muito por não gostar do formato realmente. Mas eu tive uma AGRADÁVEL surpresa.

O livro trás excelentes exemplos sem se alongar muito, com ilustrações simples na medida certa junta a definições claras e diretas. Acho que o livro encontrou o equilíbrio perfeito entre exemplos, storytelling e teoria.

Conteúdo

O livro para mim pode ser separado em três partes, essas partes tem diferentes complexidades, podendo ser divida entre básica, média e avançada. A própria ordem dos capítulos é definida dessa forma, a medida que avançamos na leitura o livro aborda assuntos mais complexos, de certa forma sequer percebemos essa mudança sútil.

Na primeira parte do livro é abordado os assuntos: arrays, listas encadeadas, notação big O, busca sequencial, busca binária, ordenação, Quicksort e hashes. Perceba que primeiro é apresentado duas estruturas de dados, depois a forma de como podemos analisar essas estruturas utilizando big O notation, então nos é apresentado algoritmos diferentes, com o conhecimento anterior podemos entender a vantagem de cada estrutura e cada algoritmo. Essa parte para mim é a de mais fácil entendimento e melhor custo benefício, com pouco conhecimento você se desenvolve bastante como programador.

Agora avançando um pouco para estruturas mais avançadas é nos apresentado o conceito de grafo. Avançando para grafo direcional, árvore, algoritmo para achar menor caminho e algoritmo de Dijkstra. Por ser um assunto mais complexo nesses capítulos é necessário uma leitura cautelosa.

Por fim o livro adentra em conhecimentos mais avançados e em algoritmos mais específicos, como k-vizinhos, problema do CACHEIRO VIAJANTE, programação dinâmica e outros. Possuindo também uma excelente explicação do algoritmo do cacheiro viajante, a forma que é abordado é incrível. Finalmente entendi esse problema é porque ele é tão complexo.

Conclusão

Excelente livro para programadores de qualquer nível, incrível para aprender conceitos, revisar conceitos e aparar arestas. A forma como o livro desenvolve e explica a estrutura de hashes é notável.

Porém senti falta de algumas coisas também, achei a explicação de pilha e fila bem superficial, sendo que hoje é um assunto muito importante, ainda mais com uma alta de micro serviços.

Image of Bright Data

Ensure Data Quality Across Sources – Manage and normalize data effortlessly.

Maintain high-quality, consistent data across multiple sources with our efficient data management tools.

Manage Data

Top comments (0)

Image of Bright Data

Maintain Seamless Data Collection – No more rotating IPs or server bans.

Avoid detection with our dynamic IP solutions. Perfect for continuous data scraping without interruptions.

Avoid Detection

👋 Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay