50 algoritmi che ogni programmatore deve conoscere. Per migliorare nel problem solving e scrivere codice più efficace
Gli algoritmi hanno sempre avuto un ruolo importante nello studio come nella pratica dell'informatica e saperli applicare per risolvere problemi è un'abilità che qualsiasi programmatore deve possedere. Questo manuale insegna a conoscere e mostra come scegliere l'algoritmo più adatto al proprio scopo, comprendendone appieno il funzionamento. Dopo aver spiegato le caratteristiche base di un algoritmo e le tecniche di progettazione, si passa allo studio e all'implementazione di algoritmi di tipo diverso attraverso esempi pratici e analisi di casi di studio. Il lettore si avvicina così alla programmazione lineare, alla classificazione di pagine, alla creazione di grafi, al machine learning e al deep learning, all'elaborazione di dati e alla crittografia, comprendendo la matematica e la logica che sono alla base di alcuni fondamentali algoritmi. Vengono inoltre presentati gli algoritmi e le metodologie per implementare i Large Language Models (LLM) come ChatGPT e le tecniche di elaborazione parallela che consentono di utilizzarli per compiti ad alta intensità di calcolo.