> > I was playing around with deque today, and there were a couple of > operations I wanted to do, that can't really be done efficiently with deque > because of its implementation. > > ... > > What do you think about adding [O(1) insert and remove] this to `deque`? >
_collectionsmodule.c has this note, so it sounds like this is intended to be a possibility if there is enough interest: /* insert(), remove(), and delitem() are implemented in terms of rotate() > for simplicity and reasonable performance near the end points. If for some > reason these methods become popular, it is not hard to re-implement this > using direct data movement (similar to the code used in list slice > assignments) and achieve a performance boost (by moving each pointer only > once instead of twice). */ https://github.com/python/cpython/blob/d16a1520c2b22c3cbde7547937ba283db3e88ff5/Modules/_collectionsmodule.c#L952-L958 --- Ricky. "I've never met a Kentucky man who wasn't either thinking about going home or actually going home." - Happy Chandler
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/M645KVEY6RUQG6SXQ3KTMY6GUPWVHYQN/ Code of Conduct: http://python.org/psf/codeofconduct/