Python Data Structures #2: Linked List
Code below (some minor improvements have been made since the video was released)… In this video we’ll begin by discussing the basics of the linked list data structure, and towards the end, we’ll move over to a coding editor to implement the ideas in Python code. In this video, as well as the last, I am using Python 2.7. For some reason, I was talking fairly slow in the beginning so you may want to up it to 1.25x speed.
► Code for this lesson: https://github.com/bfaure/Python_Data_Structures/blob/master/Linked_List/main.py
► Code for this lesson: https://github.com/bfaure/Python3_Data_Structures/blob/master/Linked_List/main.py
► Python Algorithms Series: https://www.youtube.com/playlist?list=PLEJyjB1oGzx2h88Tj90B5_HadLq339Cso
► GUI development in Python (WIP): https://www.youtube.com/playlist?list=PLEJyjB1oGzx2t9tB-59_BIG4oNolUFHX4
Further reading: https://www.cs.cmu.edu/~adamchik/15-121/lectures/Linked%20Lists/linked%20lists.html
In computer science, a linked list is a linear collection of data elements, in which linear order is not given by their physical placement in memory. Each pointing to the next node by means of a pointer. It is a data structure consisting of a group of nodes which together represent a sequence. Under the simplest form, each node is composed of data and a reference (in other words, a link) to the next node in the sequence. This structure allows for efficient insertion or removal of elements from any position in the sequence during iteration. More complex variants add additional links, allowing efficient insertion or removal from arbitrary element references.