Cyker Way <cyker...@gmail.com> added the comment:

Multi-pass stable sorts should produce the correct result. But as the number of 
columns grow the code gets messy. For brevity this example only has 2 columns 
but it may be 10 or more in a real application. Furthermore, in some cases the 
application may need to remember which columns are sorted asc/desc so you have 
to keep that piece of data (termed `keyspec` but can be any meaningful name) 
anyway. It would be ideal if a builtin function can directly operate on this 
data instead of manually writing a multi-pass sorting logic;

The proposed prototype (`c.py`) is aimed at minimizing the amount of code 
needed to illustrate the problem and is not optimized for performance. There is 
a performance hit where it wraps one object into another, but this should be 
able to be avoided. If you want to compare real performance between single- and 
multi-pass sorts, you can run this script `performance.py` instead. My test 
result is that multi-pass sorting takes 75% more time, YMMV.

----------
Added file: https://bugs.python.org/file47875/performance.py

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue35010>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to