Skip to main content

A Python package implementing core data structures from scratch using object-oriented Python

Project description

data-structures-python

A beginner-friendly Python package that implements classic data structures from scratch using object-oriented Python. Designed to help learners understand how data structures work under the hood without relying on Pythonโ€™s built-in abstractions.

Whether you're a coding bootcamp student, computer science learner, or self-taught developer โ€” this package is for you.


Why This Project?

Most learners rely on built-in Python data types (lists, sets, dicts) without truly understanding how they work under the hood.

This package is designed for:

  • Beginners who want hands-on experience
  • Bootcamp students preparing for interviews
  • Anyone transitioning into software engineering or data structures

๐Ÿง  Whatโ€™s Inside?

This package provides detailed implementations and clean interfaces for the following data structures:

Data Structure Description
โœ… Array Dynamic array with index-based operations
โœ… Stack LIFO stack implemented using both a Python list and a linked list
โœ… Queue FIFO queue implemented using a list
โœ… Linked List Singly linked list with insert, delete, search, and update operations
โœ… Doubly Linked List Bi-directional traversal with flexible insert/delete
โœ… Binary Search Tree (BST) Recursive insert, search, and in-order traversal
โœ… Graph Undirected graph using an adjacency list

All implementations are self-contained, easy to understand, and extensible for future improvements (e.g., weighted graphs, AVL trees, etc.).


data-structures-python/ โ”œโ”€โ”€ data_structures/ # Core package code โ”‚ โ”œโ”€โ”€ array.py โ”‚ โ”œโ”€โ”€ stack.py โ”‚ โ”œโ”€โ”€ stack_linked.py โ”‚ โ”œโ”€โ”€ queue.py โ”‚ โ”œโ”€โ”€ linked_list.py โ”‚ โ”œโ”€โ”€ doubly_linked_list.py โ”‚ โ”œโ”€โ”€ tree.py โ”‚ โ””โ”€โ”€ graph.py โ”œโ”€โ”€ examples/ # Jupyter notebooks (demos) โ”‚ โ”œโ”€โ”€ stack_example.ipynb โ”‚ โ”œโ”€โ”€ queue_example.ipynb โ”‚ โ”œโ”€โ”€ ... โ”œโ”€โ”€ README.md โ”œโ”€โ”€ LICENSE โ”œโ”€โ”€ setup.py โ””โ”€โ”€ pyproject.toml


๐Ÿš€ Installation

Once published on PyPI, install using:

pip install data-structures-python

---
## Author

Created by [Your Olaluwoye Olalekan Taofeek] โ€” MSc in Statistics and Big Data.

๐Ÿ“ง Email: oolaluwoye@aimsammi.org  
๐Ÿ”— LinkedIn: [linkedin.com/in/olaluwoye-olalekan](linkedin.com/in/olaluwoye-olalekan-612a92147)

---
## Live Documentation

Access the live documentation here:  
๐Ÿ‘‰ [Live Docs - data-structures-python](https://olaluwoye9.github.io/data-structures-python/)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

olaluwoye_data_structures-0.1.0.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

olaluwoye_data_structures-0.1.0-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file olaluwoye_data_structures-0.1.0.tar.gz.

File metadata

File hashes

Hashes for olaluwoye_data_structures-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ff0e365b9ccc146d6df25af14f11be7c47aa1bea3859468f9c281f568020eeb4
MD5 5d9b6614f8b4586162a3d8a74472d8ba
BLAKE2b-256 9b7693eb3b9bd37fc347130da616d99fe37d565ccd7e2e545c2198ed3e024337

See more details on using hashes here.

File details

Details for the file olaluwoye_data_structures-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for olaluwoye_data_structures-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bdafe6ebecef37fddb6a046170d8867ff5591e85565ec8180f6b3e72e829e8f3
MD5 e5973e8fc1685b4ee4a82447b8bbd6cd
BLAKE2b-256 ea4054097ad11c27753df0a4bfaf3e5f012107204d9cfb2f7107831fb714c462

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page