Skip to content

Repository files navigation

Algorithms in Python

A collection of classic and advanced Algorithms and Data Structures implemented in Python.
This repository was created as part of my Algorithms and Data Structures course and serves both as a study resource and a personal reference.

Each algorithm is written from scratch to demonstrate the core logic behind common computational techniques, data organization methods, and problem-solving paradigms.


Contents

Data Structures

  • AVL Tree – a self-balancing binary search tree.
  • Binary Tree – basic tree structure implementation.
  • Heap – max/min heap with insertion and heapify operations.
  • Skip List – probabilistic data structure for fast search, insertion, and deletion.
  • Unrolled Linked List – optimized list structure storing multiple elements per node.
  • Queue – simple FIFO queue implementation.
  • Hash Table – associative array with hashing and collision handling.

Algorithms

  • Bloom Filter – probabilistic structure for fast membership testing (uses a hash-based Rabin–Karp setup).
  • Fulkerson Algorithm – maximum flow in a flow network.
  • Jarvis March (Gift Wrapping) – convex hull algorithm for computational geometry.
  • Pattern Search (Rabin–Karp) – substring search using rolling hashes.
  • Prim’s Algorithm – finding a minimum spanning tree in a weighted graph.
  • Shell Sort – efficient generalization of insertion sort.
  • Suffix Array / Tree – structure for fast substring and pattern queries.
  • Triangulation – geometric algorithm for polygon triangulation.
  • Ullman’s Algorithm – subgraph isomorphism detection.
  • Graph Coloring – assign colors to graph nodes so that adjacent nodes differ.
  • Graph Algorithms (General) – BFS, DFS, Dijkstra, and more.

Sorting Algorithms

  • Sort (swap) – basic bubble or selection-based sorting.
  • Sort (shift) – insertion sort variant emphasizing element shifting.

How to Run

Clone the repository and run any file directly:

git clone https://github.com/bkwasny1/Algorithms-in-python.git
cd algorithms-in-python
python3 AVLtree.py

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages