Skip to main content

This is my first try in building package

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

python_data_structures_bootcamp-0.1.1.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file python_data_structures_bootcamp-0.1.1.tar.gz.

File metadata

File hashes

Hashes for python_data_structures_bootcamp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c8264347fe5d10ae433e7cd4d130ff5000b74e2bd45db1679e02c3d9593d546c
MD5 7879da2afc7be40e82c07d1605da765d
BLAKE2b-256 747336fd9f536e9b990e7b746e7699521a0bf0f0f3c9ca1cc5f9b274fb0e2a33

See more details on using hashes here.

File details

Details for the file python_data_structures_bootcamp-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for python_data_structures_bootcamp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b17c6b920aebc4f7717336c5086e33dfc7101ad0566e470405392b97e73337e8
MD5 1bd1b8e33b5e055c9c4d9c769a1cca65
BLAKE2b-256 2448c3ba9a5fcd33263845136f44412f5546ad8dd55d925427968792e05341fa

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