  The apportionment problem deals with the fair distribution of a discrete set
of $k$ indivisible resources (such as legislative seats) to $n$ entities (such
as parties or geographic subdivisions). Highest averages methods are a
frequently used class of methods for solving this problem. We present an
$O(n)$-time algorithm for performing apportionment under a large class of
highest averages methods. Our algorithm works for all highest averages methods
used in practice.
