Skip to main content

A collection of basic data structures in Python

Project description

Python Data Structures

A Python package that provides implementations of common data structures such as:

  • Singly Linked List
  • Doubly Linked List
  • Stack
  • Queue
  • Binary Tree

This package is designed to be an easy-to-use resource for anyone interested in learning or working with fundamental data structures in Python.


Features

  • Singly Linked List: A linked list where each node points to the next node.
  • Doubly Linked List: A linked list where each node points both to the next node and the previous node.
  • Stack: A LIFO (Last In First Out) data structure where elements are added and removed from the top.
  • Queue: A FIFO (First In First Out) data structure where elements are added at the rear and removed from the front.
  • Binary Tree: A tree structure where each node has at most two children, with left and right pointers.

Installation

You can install the package using pip:

pip install python-basic-data-structures

Usage

Singly Linked List

To use the Singly Linked List:

from my_data_structures.linked_list import LinkedList

# Create a LinkedList
ll = LinkedList()

# Insert elements
ll.insertAtBeginning(10)
ll.insertAtEnd(20)
ll.insertAfter(15, 1)

# Display the linked list
ll.display()

# Sort the list
ll.bubble_sort()
ll.display()

Doubly Linked List

To use the Doubly Linked List:

from my_data_structures.linked_list import DoublyLinkedList

# Create a DoublyLinkedList
dll = DoublyLinkedList()

# Insert elements
dll.insert_at_beginning(10)
dll.insert_at_end(20)
dll.insert_at(1, 15)

# Display the doubly linked list
dll.display()

Stack

To use the Stack:

from my_data_structures.stack import Stack

# Create a Stack
stack = Stack()

# Push elements
stack.push(10)
stack.push(20)

# Pop elements
stack.pop()

# Display the stack
stack.display()

Queue

To use the Queue:

from my_data_structures.queue import MyQueue

# Create a Queue with a size limit
queue = MyQueue(3)

# Enqueue elements
queue.enqueue(10)
queue.enqueue(20)

# Dequeue elements
queue.dequeue()

# Display the queue
queue.display()

Binary Tree

To use the Binary Tree:

from my_data_structures.binary_tree import BinaryTree

# Create a Binary Tree
bt = BinaryTree()

# Insert elements
bt.insert(10)
bt.insert(20)
bt.insert(5)

# Search for a value
bt.search(15)

# Display the tree in different orders
print(bt.inorder())
print(bt.preorder())
print(bt.postorder())

Contributing

Contributions are welcome! If you'd like to improve the project, feel free to fork the repository, make your changes, and submit a pull request. Here are a few ways you can contribute:

  • Implementing new data structures.
  • Adding tests for existing structures.
  • Improving documentation.

License

This project is licensed under the MIT License - see the LICENSE file for details.


Contact

If you have any questions or suggestions, feel free to open an issue on GitHub or contact me directly:


You can customize the content according to your needs, but this should serve as a solid base for your project's README. It includes essential sections like an introduction, installation instructions, usage examples, contributing guidelines, and contact information.

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

Built Distribution

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

File details

Details for the file bootcamp_for_python_basic_data_structures-0.0.1.tar.gz.

File metadata

File hashes

Hashes for bootcamp_for_python_basic_data_structures-0.0.1.tar.gz
Algorithm Hash digest
SHA256 2ebf01544b1560d4fb08f6ad57634b6fea73f662dd92495878fe89e046b319df
MD5 653ee850a5a091a112a2b736546068d6
BLAKE2b-256 b71874832322a18240024ba67257255c9c8656351e566ebf7c09bf4a6927364b

See more details on using hashes here.

File details

Details for the file bootcamp_for_python_basic_data_structures-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for bootcamp_for_python_basic_data_structures-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cdf70a1f3ba7db56ba57211080c17abcdc797342ad44b25365a9c8b2ec293a58
MD5 48ca3b16f49baafaf8914b2218d4128e
BLAKE2b-256 f1c02ba6dc61f6575ed4b1415181e23eeb157b4ab37f012a25d0e7237703a8f3

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