Skip to content

yashasvi-goel/Algorithms-Open-Source

Repository files navigation

Algorithms-Open-Source

This project is a collection of implementations of various algorithms in various programming languages. These algorithms are useful and relatively simple, and are recommended to be implemented by any computer science student.

Motivation

The motivation for this project is this reddit post

Want to Contribute?

  • Have a look at the issues
  • Select an issue you want to work on
  • Comment with the language of choice, after which you will get assigned to that issue.
    • Only then start working on the task.
  • If the algorithm of your choice is already implemented, try to optimise it.
  • Make sure to add your algorithm to the README if it does not currently exist there.

Note: It is encouraged to implement already implemented algorithms in different languages.

Project Structure

The repo is structured like

  • Algorithm Category
    • Algorithm Name
      • Language
        • Implementation - Source Code

Currently implemented algorithms

  • Compiler

    • LALR parser
    • LL-1 Parser
  • Circle Drawing

    • Bresenham
  • Encryption

    • Diffie-Hellman
    • RSA
    • Shamir Secret Sharing Algorithm
  • Graph Algorithms

    • 0/1 BFS Traversal
    • BFS Traversal
    • Bidirectonal Dijkstra
    • Cycle Detection
    • DFS Traversal
    • MultiSource BFS
    • All Pairs Shortest Path (FloydWarshall)
    • Bellman Ford Algorithm
    • Bridge Finding Algorithm
    • Topological Sort
  • LeetCode Solutions

  • Markov Algorithms

    • Viterbi Algorithm
  • Page Rank

  • Polynomial Solver

    • Newton Method
  • Set Checking

    • Bloom Filter
    • Frequency
  • Sorting

    • Bead Sort
    • Bitonic Sort
    • Bubble sort
    • Recursive Bubble sort
    • Bucket Sort
    • Cocktail Sort
    • Comb Sort
    • Counting Sort
    • Gnome Sort
    • Heap sort
    • Insertion sort
    • Merge Sort
    • Odd-Even Sort
    • Pancake Sort
    • Quick Sort
    • Radix Sort
    • Selection Sort
    • Shell Sort
    • Stooge Sort
    • Tim Sort
    • Cycle Sort
  • Stable Matching

    • Gale Shapley
  • String Matching

    • Rabin-Karp
    • Z Algorithm
  • Tree Traversal

    • BFS
    • Inorder
    • Iterative Post order
    • Iterative Pre order
    • Post order
    • Pre order

Maintainers

Contributors

CONTRIBUTORS

Come talk to us

Join our discord channel