This book constitutes the refereed proceedings of the 20th Annual European Symposium on Algorithms, ESA 2012, held in Ljubljana, Slovenia, in September 2012 in the context of the combined conference ALGO 2012. The 69 revised full papers presented were carefully reviewed and selected from 285 initial submissions: 56 out of 231 in track design and analysis and 13 out of 54 in track engineering and applications. The papers are organized in topical sections such as algorithm engineering; algorithmic aspects of networks; algorithmic game theory; approximation algorithms; computational biology; computational finance; computational geometry; combinatorial optimization; data compression; data structures; databases and information retrieval; distributed and parallel computing; graph algorithms; hierarchical memories; heuristics and meta-heuristics; mathematical programming; mobile computing; on-line algorithms; parameterized complexity; pattern matching, quantum computing; randomized algorithms; scheduling and resource allocation problems; streaming algorithms.