A repository of different Algorithms and Data Structures implemented in many programming languages.
# Data Structures and Algorithms 
Clean example implementations of data structures and algorithms written in different languages.
<br><br>
[![Gitter chat](https://badges.gitter.im/VAR-solutions/Algorithms.png)](https://gitter.im/VAR-solutions/Algorithms "Gitter chat")
[![MIT license](http://img.shields.io/badge/license-MIT-brightgreen.svg)](http://opensource.org/licenses/MIT)
[![Issues](http://img.shields.io/github/issues/VAR-solutions/Algorithms.svg)](https://github.com/VAR-solutions/Algorithms/issues)
#### List of implementations

[Algorithms list(not updated)](#)

## Contribution!
 * Contributions are always welcome. Language doesn't matter. Just make sure you're implementing an algorithm.
 * PRs are welcome. To begin developing, follow the structure:

   > Algorithm-Type/algorithm-name/language-name/file-name.extension
   
   e.g
   > Sorting/bubble-sort/python/bubble-sort.py

 * If there is an implementation of the same algorithm in your language, do not give a PR for that.
 * Please include a description for the algorithm that you are implementing. It doesn't matter if it's copied from somewhere as long as it helps people that are learning new algorithm.
 * Graphical examples would be very helpful too.
 * You can include tests as well.
 * Don't remove previous implementations of algorithms. Just add a new file with your own implementation.
 * Beautify and clean up your code for easier reading
 ### Note:
 * If your PR is closed without any comment, it means that your PR does not meet the above criteria. Make sure your PR is **not Duplicate** and it should be **well-documented**.

## Resources

 The curated list of resources dealing with algorithms.

 * **Sites**
   * [Algorithms - Tutorials point](https://www.tutorialspoint.com/data_structures_algorithms/index.htm)
   * [Algorithms - Princetone edu](http://algs4.cs.princeton.edu/home/)
   * [Data structures and algorithms - Hackr](https://hackr.io/tutorials/learn-data-structures-algorithms)
   * [Data science - Topcoder](https://www.topcoder.com/community/data-science/data-science-tutorials/)
   * [Fundamentals Of Algorithms- Geeks For Geeks](http://www.geeksforgeeks.org/fundamentals-of-algorithms/)
   * [Visual Algorithm - visualising data structures and algorithms through animation](https://visualgo.net/en)
   * [Rosetta Code](http://rosettacode.org/wiki/Rosetta_Code)
   * [GeeksforGeeks](https://www.geeksforgeeks.org)
* **Online classes (Free)**
  * Coursera 
      * [Introduction to algorithms Part 1](https://www.coursera.org/learn/algorithms-part1)
      * [Algorithms specialization 4 courses](https://www.coursera.org/specializations/algorithms)
   * Khan Academy 
     * [Algorithms](https://www.khanacademy.org/computing/computer-science/algorithms)
   * Udacity
      * [Computability, Complexity & Algorithms](https://www.udacity.com/course/computability-complexity-algorithms--ud061)
      * [Intro to algorithms](https://www.udacity.com/course/intro-to-algorithms--cs215)
   * EdX
      * [Algorithms](https://www.edx.org/course/algorithms-iitbombayx-cs213-3x-0)
      * [Algorithms and data structures](https://www.edx.org/course/algorithms-data-structures-microsoft-dev285x)
     * [Algorithm Design and Analysis](https://courses.edx.org/courses/course-v1:PennX+SD3x+2T2017/course/)
     * [Graph Algorithms](https://www.edx.org/course/graph-algorithms-uc-san-diegox-algs202x)
     * [Data Structures](https://www.edx.org/course/data-structures-uc-san-diegox-algs201x)
      * [Algorithmic Design and Techniques](https://www.edx.org/course/algorithmic-design-techniques-uc-san-diegox-algs200x)
     * [String Processing and Pattern Matching Algorithms](https://www.edx.org/course/string-processing-pattern-matching-uc-san-diegox-algs204x)
     * [Graph Algorithms in Genome Sequencing](https://www.edx.org/course/graph-algorithms-genome-sequencing-uc-san-diegox-algs206x)

     * [Algorithms and Data Structures Capstone](https://www.edx.org/course/algorithms-data-structures-capstone-uc-san-diegox-algs207x)
     * [Data Structures](https://www.youtube.com/user/mycodeschool)
     * [Algorithms and Data Structures Capstone](https://www.edx.org/course/algorithms-data-structures-capstone-uc-san-diegox-algs207x) 
     * [Data Structures and Algorithms](https://www.programiz.com/dsa)
   * GeeksForGeeks
     * [Algorithms](https://www.geeksforgeeks.org/fundamentals-of-algorithms/)
 * **Coding Practice Sites**
    * [HackerRank](https://www.hackerrank.com/)
    * [HackerEarth](https://www.hackerearth.com/)
    * [SPOJ](http://www.spoj.com/)
    * [TopCoder](https://www.topcoder.com/)
    * [CodeChef](https://www.codechef.com/)
    * [Codeforces](http://codeforces.com/)
    * [Project Euler](https://projecteuler.net/)
    * [LeetCode](https://leetcode.com/)
    * [CodinGame](https://www.codingame.com/)
    * [CodeWars](https://codewars.com/)
    * [Coderbyte](https://www.coderbyte.com/)
    * [HireVue](https://www.hirevue.com/)
    * [FreeCodeCamp](https://www.freecodecamp.org/)
    * [CodeSignal](https://codesignal.com/)
    * [AtCoder](https://atcoder.jp/)
    
# Project Maintainers.
* [Vishal Gaur](https://github.com/i-vishi) :tada:<br>
* [Ravi Varshney](https://github.com/ravivarshney01) :tada:<br>
* [Ananya Tewari](https://github.com/antew7) :tada:<br>
