Questo libro si pone in ideale continuità con "Dal problema al programma. Introduzione al problem-solving in linguaggio C", degli stessi autori. L'enfasi, in questo caso, si sposta sulla ricorsione: uno degli strumenti più potenti a disposizione del programmatore impegnato nelle attività di problem-solving, e al tempo stesso uno degli argomenti più ostici per gli studenti. Gli autori dapprima introducono il concetto di ricorsione mediante una serie di classici esempi di problemi ricorsivi, in ambito sia matematico che informatico; vengono poi introdotte le tecniche di esplorazione esaustiva dello spazio delle soluzioni, di ottimizzazione e di pruning. Ampio spazio è dedicato a esempi (interamente svolti) ed esercizi. La seconda edizione approfondisce la trattazione sugli ordinamenti ricorsivi e presenta nuovi problemi svolti.