Welcome to the NITSkmOS/Algorithms

Open Source Love Gitter NITSkmOS Algorithms Build Status GitHub GitHub contributors OpenHub

This repository contains examples of various algorithms written on different programming languages…

Implemented Algorithms

Algorithm C CPP Java Python
Euclidean GCD :octocat:   :octocat: :octocat:
Merge Sort :octocat: :octocat: :octocat: :octocat:
QuickSort :octocat:   :octocat: :octocat:
Insertion Sort :octocat: :octocat:   :octocat:
Counting Sort :octocat: :octocat:   :octocat:
Radix Sort   :octocat:   :octocat:
Binary Search   :octocat:   :octocat:
Bubble Sort :octocat: :octocat: :octocat: :octocat:
Shell Sort :octocat:     :octocat:
Heap Sort       :octocat:
Maximum Subarray Problem       :octocat:
Knapsack Problem       :octocat:
Selecton Sort :octocat: :octocat:    

Implemented Data Structures

Data Structure C CPP Java Python
Queue   :octocat:    
Stack :octocat:   :octocat: :octocat:
Linear Linked List :octocat: :octocat: :octocat: :octocat:
AVL Tree :octocat: :octocat: :octocat: :octocat:
Binary Search Tree   :octocat:    
Fenwick Tree   :octocat: :octocat: :octocat:
Doubly Linked List :octocat:      

Sample Run

Language Steps
JavaScript <pre>node [filename.js]</pre>
Python <pre>python [filename.py]</pre>
C <pre>gcc [filename.c]
./a.out # unix
a.exe # windows</pre>
CPP <pre>g++ [filename.cpp]
./a.out # unix
a.exe # windows</pre>
Java <pre>javac [filename.java]
java [filename]</pre>

Contributing

  1. Fork it!
  2. Clone the forked repository to local system.
  3. Create your feature branch: git checkout -b my-new-feature
  4. Commit your changes: git commit -am 'Add some feature'.

    Go through Commit Messages guidelines

  5. Push to the branch: git push origin my-new-feature
  6. Submit a pull request :smile:

See CONTRIBUTING.md.

Support

Feel free to contact us at our Gitter channel, we’d be happy to help!

Notes

Only project maintainers should merge a PR. Other members can add their reviews to a PR but the merging should be done by only a project maintainer.