Compression is an option naturally selected when faced with problems of high costs or restricted space. This book offers readers a succinct and reader-friendly foundation to the most important topics in the field of data compression.Divided into two parts, Part I presents the basic approaches to data compression and describes a few popular techniques and methods that are commonly used to compress data. The reader discovers essential concepts, such as variable-length and prefix codes, statistical distribution and run-length codes. Part II concentrates on advanced techniques, such as arithmetic coding, orthogonal transforms, subband transforms and Burrows-Wheeler transform.Complete and clear, this book will be the perfect reference for advanced undergraduates in computer science and requires a minimum of mathematics. An author-maintained website provides readers with errata and auxiliary material.