Master the fundamentals that drive modern software, algorithms and computer science. In this book, Lucien Sina explains in a clear and practical way how to design, analyze and implement algorithms efficiently. Step by step, the book covers:

– Analysis of runtime and memory usage
– Abstract data types and algebras
– Basic and dynamic data structures: sets, lists, stacks, queues, maps
– Trees: binary trees and general trees
– Numerous examples, implementations, and exercises with solutions for immediate application

Ideal for students, developers, and anyone who wants to gain solid, practical knowledge of algorithms and data structures.