/pythonAlgorithms

Python implementations of common computer science data structures & algorithms

Primary LanguagePythonApache License 2.0Apache-2.0

PythonAlgorithms

Python implementations of common computer science data structures & algorithms.

Data Structures

  • Linked List

      - insertion
      - printing the list
      - Removing duplicates
    
  • Binary Search Tree

      - insertion
      - traversal (inorder, preorder, postorder)
      - calculate height of the tree
      - search an element in the tree
      - delete a node from the tree
      - find the min element in the tree
    
  • Queue

      - enqueue
      - print
      - return the front of the queue
      - dequeue
      - check if the queue is empty
    
  • Max Heap

      - max heapify
      - heapsort
    
  • Priority Queue

      - return the max element
      - remove the max element from the queue
      - increase key
      - insert an element to the queue
    
  • Directed Graph

      - add edges to the graph
      - breath first search
    
  • Weighted Directed Graph

      - add edges to the graph
      - breath first search
      - Dijkstra’s shortest path algorithm
    

Sorting Algorithms

Traversal

Wishlist

License

This project uses the Apache License Version 2.0 software license.