Skip to content
This repository contains some useful codes, techniques, algorithms and problem solutions helpful in Competitive Coding. Join with me on telegram group https://t.me/joinchat/GL4Y8RREZbz-Cp78R869CQ
C++ Java C Python JavaScript
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Armstrong Number
Dynamic Programming
June 2019 Long Challenge
Linked List
Searching Algo
Sorting Algos
Variation of Nim
AVL_Tree.c
BFS.py
BinaryTree_Preorder_Postorder_Inorder.cpp
Binary_heaps.cpp
Binarytree_operations.cpp
CRT.cpp
CRT.java
CheckFib.cpp
CircularQueue.cpp
CountSort.py
DFS.py
DSU_implementation.cpp
Dijkstra.py
Fermat_Primality_Test.cpp
FibonacciMatrixMethod.java
Forward_and Backward_Navigation_DLL.c
Height_of_generic_tree.cpp
KMP.cpp
KMP.java
KMP.py
Kadane.c
Kadane.cpp
Knapsack.cpp
Kruskal.c
LPS.cpp
Level_Order_Traversal_in_BinaryTree.cpp
LongestPalindromicSubstringDP.java
Lucas.cpp
Lucas.java
Lucas.py
MatrixChainMultiply.cpp
MaxMinDegree_in_Graph.cpp
Maximum_value_of_arithmetic_expresssion.cpp
Maze.py
MazeBacktracking.java
N-Queens_backtracking.cpp
Permutation_Sort.cpp
README.md
Rabin_Karp.cpp
Randomized_quick_sort.cpp
Rat_Maze.cpp
Rat_in_a_Maze.cpp
Rubik's_Cube.cpp
SUM.cpp
SegmentTree.cpp
Segmented_Sieve.cpp
SerializeDeserialize.java
ShellSort.cpp
SieveOfErathosthenes.java
SieveofEratosthenes.c
SieveofEratosthenes.cpp
Sudoku.cpp
Swapping_using_xor.cpp
TimSort.py
Topological Sort.py
TowerOfHanoi.cpp
Trie.cpp
Zeckendorf's Theorem.cpp
Zeckendorf's Theorem.java
addition.cpp
adjList.cpp
bellmanford.c
bfs.cpp
binary_search_tree.cpp
binarysearch.cpp
closestPair.cpp
dfs_graph.cpp
dijkastra.cpp
doublyLinkedList.js
evalOfPostfixUsingStack.cpp
floyd.c
graph_generic.cpp
insert_sort.cpp
inversion.cpp
pascal's_Triangle.py
prim.c
scc.cpp
sort 0s,1s,2s array.cpp
tries.cpp

README.md

Gitter Get it on Google Play

Join with me on telegram group https://t.me/joinchat/GL4Y8RREZbz-Cp78R869CQ

Welcome to Algorithm and Data Structure Notes 📋

Our open source community is focussed on understanding the concepts and while doing so, whenever someone gets trapped, they can see one way to code in any language they want. So, we are developing a repository having implementation in as many languages as we can.

Index

Steps to follow 📜

1. Fork it 🍴

You can get your own fork/copy of Algo_Ds_Notes by using the Fork button or clicking this.

Fork Button

2. Clone it 👥

You need to clone (download) it to local machine using

$ git clone https://github.com/Your_Username/Algo_Ds_Notes.git

This makes a local copy of repository in your machine.

Once you have cloned the Algo_Ds_Notes repository in Github, move to that folder first using change directory command on Linux, Windows and Mac.

# This will change directory to a folder Algo_Ds_Notes
$ cd Algo_Ds_Notes

Move to this folder for all other commands.

3. Set it up ⬆️

Run the following commands to see that your local copy has a reference to your forked remote repository in Github :octocat:

$ git remote -v
origin  https://github.com/Your_Username/Algo_Ds_Notes.git (fetch)
origin  https://github.com/Your_Username/Algo_Ds_Notes.git (push)

Now, lets add a reference to the original Algo_Ds_Notes repository using

$ git remote add upstream https://github.com/jainaman224/Algo_Ds_Notes.git

This adds a new remote named upstream.

See the changes using

$ git remote -v
origin    https://github.com/Your_Username/Algo_Ds_Notes.git (fetch)
origin    https://github.com/Your_Username/Algo_Ds_Notes.git (push)
upstream  https://github.com/jainaman224/Algo_Ds_Notes.git (fetch)
upstream  https://github.com/jainaman224/Algo_Ds_Notes.git (push)

4. Sync it ♻️

Always keep your local copy of repository updated with the original repository. Before making any changes and/or in an appropriate interval, run the following commands carefully to update your local repository.

# Fetch all remote repositories and delete any deleted remote branches
$ git fetch --all --prune

# Switch to `master` branch
$ git checkout master

# Reset local `master` branch to match `upstream` repository's `master` branch
$ git reset --hard upstream/master

# Push changes to your forked `Algo_Ds_Notes` repo
$ git push origin master

5. Ready Steady Go... 🐢 🐇

Once you have completed these steps, you are ready to start contributing by checking our Help Wanted Issues and creating pull requests.

6. Create a new branch ‼️

Whenever you are going to make contribution. Please create seperate branch using command and keep your master branch clean (i.e. synced with remote branch).

# It will create a new branch with name Branch_Name and switch to branch Folder_Name
$ git checkout -b Folder_Name

Create a seperate branch for contibution and try to use same name of branch as of folder.

To switch to desired branch

# To switch from one folder to other
$ git checkout Folder_Name

To add the changes to the branch. Use

# To add all files to branch Folder_Name
$ git add .

Type in a message relevant for the code reveiwer using

# This message get associated with all files you have changed
$ git commit -m 'relevant message'

Now, Push your awesome work to your remote repository using

# To push your work to your remote repository
$ git push -u origin Folder_Name

Finally, go to your repository in browser and click on compare and pull requests. Then add a title and description to your pull request that explains your precious effort.

Help Contributing Guides 👑

We love to have articles and codes in different languages and betterment of existing ones.

Please discuss it with us first before creating new-issue.

🎉 🎊 😃 Happy Contributing 😃 🎊 🎉

References 📋 📜

  • Books 📖 📚
    • Data Structures with C by Schaum Series
    • Data Structures: A Pseudocode Approach with C by Richard F. Gilberg
    • Fundamentals Of Data Structures in C by Horowitz
    • Introduction To Algorithms By Thomas H. Cormen
    • Java: The Complete Reference By Herbert Schildt
    • Object Oriented Programming with C++ by E Balaguruswamy
  • Websites 💻
You can’t perform that action at this time.