Six years in the making, this is a free book about elementary algorithms and data structures. This book doesn't only focus on an imperative (or procedural) approach, but also includes purely functional algorithms and data structures.
Tag(s): Algorithms and Data Structures
Publication date: 01 Apr 2016
Paperback: 622 pages
License: GNU General Public License Version 3
Post time: 21 Oct 2016 12:00:00
There are plenty of books about algorithms, such as "Introduction to algorithms", "The art of computer programming", "structure and interpretation of computer programs"… why another book? Is it reinvention of wheel?
This book can"t compare with the above classic bibles at all. It has some features like:
- All algorithms are described in math formulas and pseudo codes. I hope it bring some taste of elegant by using algebraic symbols.
- All algorithms are realized in both purely functional and imperative approaches.
- The examples are provided in multiple programming languages, including C, Haskell, Python, C++, Scheme/Lisp. Haskell is the main language for all functional implementations.
The following content are covered in this book (in the order of appearance)
- Binary search tree, insertion sort, red-black tree, AVL tree, Trie, Patricia, suffix tree, B-tree;
- Binary heap, Leftist heap, skew heap, splay heap, selection sort, binomial heap, Fibonacci heap, pairing heap;
- Queue, Finger tree based sequence, quick sort, merge sort, binary search, saddle-back search, KMP, Boyer-Moore, DFS, BFS, Greedy algorithm, Dynamic programming.
About The Author(s)