Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Book of Elementary Algorithms and Data structures
TeX Python Haskell C++ C Scheme Other
Branch: algoxy
Failed to load latest commit information.
combinatorics/misc/select_perm Replace CRLF to LF for some files
datastruct [avl] Make the balance factor definition be aligned
img Included the chatper of search to the main book, add a new cover figure
numeric Replace CRLF to LF for some files
others Use recursive $(MAKE)…
preview Updated release for some obvious errors in preface
search Use recursive $(MAKE)…
sorting Use recursive $(MAKE)…
tool [queue] force the margin to be zero for dot figures
transform/BWT Replace CRLF to LF for some files
.gitattributes Started implement Huffman tree building with heap in C++
.gitignore Added *.eps to .gitignore
INSTALL updated INSTALL to include texlive-lang-greek
Makefile Use recursive $(MAKE)…
README Updated the link for v0.61803
TODOLIST Added a table to index problems
common-en.tex Using import package to resolve nested input issue
donate.txt Added ANSI C version insert and get for binary random access list.
fdl-1.3.tex Branched for github publish.
gpl-3.0.txt Branched for github publish.
main-en.tex Using import package to resolve nested input issue


Elementary Algorithms

Edition: 0.6180339887498949

2015, May, 27

AlgoXY 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. It doesn't require readers to
master any programming languages, because all the algorithms are
described using mathematical functions and pseudocode.

For reference and implementation purposes, source code in C, C++, Haskell,
Python, Scheme/Lisp is available in addition to the book.

The contents of the book are provided under GNU FDL and the source
code is under GNU GPLv3.

The PDF version can be downloaded from github:

This book is also available online at:

Larry LIU Xinyu
Something went wrong with that request. Please try again.