36
Python Big O: the time complexities of different data structures in Python
(www.pythonmorsels.com)
Welcome to the Python community on the programming.dev Lemmy instance!
Past
November 2023
October 2023
July 2023
August 2023
September 2023
Zero surprises. It's the same as in any other language.
I was a bit surprised that
deque
is implemented as a linked list and not, for example, a ring buffer. It would mean that index reads would be constant time (though insert and delete at an index would be linear time), the opposite of using a linked list.But a ring buffer is a FIFO data structure that can be implemented using linked lists. What ring buffer implementation did you have in mind?
I am used to seeing ring buffers implemented using an array. They are FIFO if you write to the maximum offset and read from the minimum offset but they are double ended if you have a method to read from the maximum offset and write to the minimum offset.