SIGN IN SIGN UP

Issue #21424: Optimize heaqp.nlargest() to make fewer tuple comparisons.

Consolidates the logic for nlargest() into a single function so that
decoration tuples (elem,order) or (key, order, elem) only need to
be formed when a new element is added to the heap.  Formerly, a tuple
was created for every element regardless of whether it was added to
the heap.

The change reduces the number of tuples created, the number of ordering
integers created, and total number of tuple comparisons.
R
Raymond Hettinger committed
277842eff12eba1ceeeba1cee93db3ec99d5c95a
Parent: d6a46ae