130.8K ·GitHub
What is this?
Hello Algo is a free, open-source illustrated book that teaches data structures and algorithms from scratch using animated diagrams and one-click runnable code.
Is this a coding library or a book to read?
It is a tutorial book (readable online or via this repo), not a software library — the code snippets are worked examples you run to understand each algorithm, not a package you import into a project.
How do I start reading and running the examples?
Work through the chapters in order starting from the basics; each chapter's source code is 'one-click runnable' so you can execute it directly to see how the data structure or algorithm behaves.
Which programming languages can I follow the code in?
Code implementations are provided in 12+ languages including Python, Java, C++, C, C#, JavaScript, Go, Swift, Rust, Ruby, Kotlin, TypeScript and Dart.
Can I use this book commercially or redistribute it freely?
No — the content is under CC BY-NC-SA 4.0, meaning it is free for personal learning but commercial use and relicensing are not permitted.
Is this aimed at absolute beginners or experienced engineers?
It's explicitly designed for newcomers, with a gentle learning curve meant to guide beginners through the data-structures-and-algorithms knowledge map.
What written languages is the book itself available in, besides the code?
Beyond Simplified Chinese, the book text is also available in Traditional Chinese, English and Japanese.
Who has endorsed this book?
It's praised by Tsinghua professor Deng Junhui and Amazon chief scientist Li Mu, who said it would have made learning data structures and algorithms ten times easier for him.
Can I read and run it fully offline?
Yes — since it's a plain Git repository with runnable source files per language, you can clone it and work through every chapter and code sample without an internet connection.
What are similar projects?
apachecn-algo-zh, leetcode, LeetCodeAnimation, leetcode, algorithm-pattern, CtCI-6th-Edition, leetcode-master, hello-algorithm
Which topics is it in?
dsa, data-structure, leetcode, dart, algorithm, ruby, data-structures, interview-preparation, algorithms, computer-science, programming, kotlin
