A collection of my data structures implementations for learning and reference. Learned and written personally. This is sort of a journey showcasing my improvement in Python.
- Stack - A data structure that goes by the order of last in, first out. Like stacking books atop each other. You have to make your way down from the top to get to the bottom. Also used in Depth-First Search.
- Queue - A data structure that goes by the order of first in, first out. Like a restaurant waiting line. First come, first serve, if you're early you skip the line entirely. Also used in Breadth-First Search.
- Linked List - A linear list. It starts from a head node, which contains both the data and a pointer to the next node. And that node has both its own data and a pointer to the next, and so on... The pointer is essential for traversing the list, as it's the only way to find the next node.
- General Tree - A tree graph without any particular restrictions. Starts from a root node, and branches out into multiple leaves, with or without their own children. Can be traversed using DFS and BFS.
- Weighted Graphs
- Binary Trees
- Heaps
- And many more!
Python 3.11.9