Q-Digest
Q-Digest is simply a complete binary tree over the range of values, where the leaf nodes are the values themselves. It as an algorithm for computing approximate quantiles on a collection of integers. Data quantiles have many applications from robust estimation, which I'll return to in a later article, to improving database query planning. A quantile summary of the sort the q-digest algorithm generates, captures information about the cumulative density function of a random variable and as such can be used for non-parametric estimation.