Sort one sequence by O(n) in time and O(1) in space
Chris Angelico
rosuav at gmail.com
Mon Feb 10 10:52:08 EST 2014
On Tue, Feb 11, 2014 at 2:45 AM, Oscar Benjamin
<oscar.j.benjamin at gmail.com> wrote:
> Something like
>
> mylist[:] = reorder_generator(mylist)
>
> won't work because the generator would need to access the data
> non-sequentially (it would need to read elements after they were
> overwritten).
This would have O(1) space and O(n) time. It's absolutely perfect...
except that you now don't technically have a list any more:
mylist = reorder_generator(mylist)
You can iterate over it, but can't index it. But hey, it complies with
the space/time requirements!
ChrisA
More information about the Python-list
mailing list