#22237: document that sorted() is guaranteed to be stable. Initial patch by Martin Panter.

This commit is contained in:
Ezio Melotti 2014-10-28 12:57:11 +01:00
parent 7876f72f6a
commit 9f8a5b1abd
3 changed files with 9 additions and 1 deletions

View File

@ -1318,6 +1318,11 @@ available. They are listed here in alphabetical order.
each element only once. Use :func:`functools.cmp_to_key` to convert an
old-style *cmp* function to a *key* function.
The built-in :func:`sorted` function is guaranteed to be stable. A sort is
stable if it guarantees not to change the relative order of elements that
compare equal --- this is helpful for sorting in multiple passes (for
example, sort by department, then by salary grade).
For sorting examples and a brief sorting tutorial, see `Sorting HowTo
<http://wiki.python.org/moin/HowTo/Sorting/>`_\.

View File

@ -136,7 +136,6 @@ pushing all values onto a heap and then popping off the smallest values one at a
time::
>>> def heapsort(iterable):
... 'Equivalent to sorted(iterable)'
... h = []
... for value in iterable:
... heappush(h, value)
@ -145,6 +144,9 @@ time::
>>> heapsort([1, 3, 5, 7, 9, 2, 4, 6, 8, 0])
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
This is similar to ``sorted(iterable)``, but unlike :func:`sorted`, this
implementation is not stable.
Heap elements can be tuples. This is useful for assigning comparison values
(such as task priorities) alongside the main record being tracked::

View File

@ -1008,6 +1008,7 @@ Todd R. Palmer
Juan David Ibáñez Palomar
Jan Palus
Yongzhi Pan
Martin Panter
Mathias Panzenböck
M. Papillon
Peter Parente