This release contains the new edition with 119 exercises/answers (both in English and Chinese). The book is fully rewrote from 2020 to 2023. Below are some major changes compare with the 1st edition:
- Make functional list (singly-linked) the first chapter, as it's the basic bricks for almost all functional data structures and algorithms; Removed the chapter about suffix-tree; added appendix about the deletion algorithms for red-black tree and AVL tree.
- Consolidate all example programs into two unified languages: Haskell for functional, and Bourbaki (a virtual language) for imperative;
- Unified notations for algorithm definition; Simplified the explanation for all algorithms; Improved some implementation with fusion through
concatMap
(aka.flatMap
). Fixed errors found in the 1st edition; - Provided answers to 119 exercises;
- Removed the dependency to
dot
(graphviz
) andimagemagic
, upgraded the build system tolualatex
.
Cheers.
Xinyu LIU
Sep 1st/2023