Coder Social home page Coder Social logo

saikiranreddy201 / algorithms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kumar-laxmi/algorithms

0.0 0.0 0.0 3.48 MB

A Repository for algorithms in C, C++, Python and Java

License: Apache License 2.0

C++ 26.85% Python 24.38% C 21.18% Java 27.60%

algorithms's Introduction

A repository for all Algorithms





GitHub repo size GitHub repo file count

GitHub issues GitHub pull requests GitHub GitHub forks GitHub Repo stars


Tech Stacks





Programs we have been a part of

No. Program Name Duration Deployment
1. Hacktoberfest (2022) 1st Oct 2022 - 31st Oct 2022 Algorithm
2. Social Winter of Code (2023) 1st Jan 2023 - 15th Mar 2023 Algorithm
3. Social Summer of Code (2023) 1st June 2023 - 31st July 2023 Algorithm


Available Resources

  • The resources are categorized based on programming language. One folder for one programming language

    • Each folder has different subfolders. The subfolder represents the category algorithm belongs to
      • Each subfolder has different files. Filename represents the name of the algorithm

Arrays

No. Algorithm Name Available languages
1. Diagonal Print Algorithm in 2D Array C, C++, Java, Python
2. Fisher-Yates Algorithm C, C++, Java, Python
3. Monotonic Array C, C++, Java, Python
4. Spiral Print Matrix C, C++, Java, Python

Binary

No. Algorithm Name Available languages
1. Binary <-> Gray Code Conversion C, C++, Java, Python
2. Brian Kerningham's Algorithm C, C++, Java, Python
3. Hamming Distance Theorem C, C++, Java, Python

Cryptography

No. Algorithm Name Available languages
1. Caesar Cipher C, C++, Java, Python
2. Columnar Transposition Cipher C, C++, Java, Python
3. Diffie - Hellman Algorithm Python
4. Hill Cipher C++, Java, Python
5. Homophonic Substitution C, C++, Java, Python
6. Railfence Cipher C, C++, Java, Python
7. RSA C, C++, Java, Python
8. SHA - 256 C, C++, Java, Python
9. Vernam Cipher C, C++, Java, Python
10. Vignere Cipher C++, Java, Python

Data Compression

No. Algorithm Name Available languages
1. Burrows-Wheeler Transform Algorithm C, C++, Java, Python
2. Huffman Coding C, C++, Java,Python

Deadlock Avoidance

No. Algorithm Name Available languages
1. Banker's Algorithm C, C++, Java,Python

Deep Learning

No. Algorithm Name Available languages
1. Perceptron Learning - Boolean Functions Python

Divide and Conquer

No. Algorithm Name Available languages
1. Karatsuba Algorithm C++, Java, Python
2. N-Queen's Problem C, C++, Java, Python
3. Strassen's Matrix Multiplication C, C++, Java, Python

Dynamic Programming

No. Algorithm Name Available languages
1. 0/1 Knapsack C, C++, Java, Python
2. Coin change problem C, C++, Java, Python
3. Edit Distance C++
4. Fibonacci Number C, C++, Java, Python
5. Hierholzer Algorithm C, C++, Java, Python
6. Longest Common Subsequence C, C++, Java
7. Matrix Chain Multiplication C++
8. Minimum Jump Algorithm C, C++, Java, Python
9. Minimum Sum Partition Problem C, C++, Java, Python
10. Partition problem C++, Java
11. Shortest Common Supersequence Problem C, C++, Java, Python
12. Travelling Salesman Problem C, C++, Java, Python

Game Theory

No. Algorithm Name Available languages
1. Grundy's Number C, C++, Java, Python

Graphics

No. Algorithm Name Available languages
1. Scanline Algorithm C++, Python

Graphs

No. Algorithm Name Available languages
1. Bellman Ford C++
2. Dial’s Algorithm C, C++, Java, Python
3. Dijkstra C, C++, Java, Python
4. Dinic's Algorithm C++, Java, Python
5. Disjoint Set Union C, C++, Java, Python
6. Fleury's Algorithm C, C++, Java, Python
7. Floyd Warshall C, C++, Java, Python
8. Ford-Fulkerson Algorithm C++, Python
9. Hamiltonian Path Java
10. Hopcroft-Karp Algorithm C, C++, Java, Python
11. Kosaraju's Algorithm C++
12. Multistage Graph (Shortest Path) C, C++, Java, Python
13. Prim's Algorithm C++, Java, Python
14. Tarjan Algorithm C, C++, Java, Python

Greedy Algorithm

No. Algorithm Name Available languages
1. Activity Selection C, C++, Java, Python
2. Egyptian Fraction C, C++, Java, Python
3. Fractional Knapsack C, C++, Python
4. Job Sequencing C, C++, Java, Python
5. Merge Interval Algorithm C, C++, Java, Python
6. Optimal Merge Pattern C, C++, Java, Python

Hashing

No. Algorithm Name Available languages
1. Bloom-Filter Algorithm C, C++, Java, Python

Job Scheduling

No. Algorithm Name Available languages
1. Priority Scheduling C, C++, Java, Python

Linked List

No. Algorithm Name Available languages
1. Addition of two Linked Lists C, C++, Java, Python
2. Circular Linked List C, C++, Python
3. Detect loop in a Linked List C++
4. Doubly Linked List C, C++, Java, Python
5. Intersection of two Linked Lists C++
6. Length of Linked List C, C++, Java, Python
7. LRU Cache Design C, C++, Java, Python
8. Merge Two Sorted Linked List C, C++, Java, Python
9. Merge K Sorted Linked List C, C++, Java, Python
10. Palindrome Linked List C, C++, Java, Python
11. Reverse Linked List C, C++, Java, Python
12. Reverse Linked List in a Group of K C, C++, Java, Python
13. Singly Linked List C, C++, Java, Python
14. Sorting Linked List C, C++, Java, Python

Machine Learning

No. Algorithm Name Available languages
1. Decision Tree Python
2. Feed-Forward Neural Network C++
3. K-Means Clusters C, C++, Python
4. K-Nearest Neighbours C, C++, Java, Python
5. Linear Regression C, C++, Java, Python
6. Logistic Regression C++, Python
7. Naive Bayes C++, Python

Maths

No. Algorithm Name Available languages
1. Armstrong Numbers C, C++, Java, Python
2. Binary Exponentiation C, C++, Python
3. Bennett's Formula C, C++, Java, Python
4. Bisection Algorithm C, C++, Java, Python
5. Chinese Remainder Theorem C, C++, Java, Python
6. Chudnovsky Algorithm C, C++, Java, Python
7. Closures of Relations C, C++, Java, Python
8. Decimal <-> Binary Converter C, C++, Java, Python
9. Extended Euclidean Algorithm C, C++, Java, Python
10. Euler's Totient Function C, C++, Java, Python
11. Factorial of Number C, C++, Java, Python
12. Factors C, C++, Java, Python
13. Frievald's Algorithm C, C++, Java, Python
14. GCD & LCM C, C++, Java, Python
15. Heron's Formula C, C++, Java, Python
16. Manhattan Distance C, C++, Java, Python
17. Modular Exponentiation C, C++, Java, Python
18. Pascal's Triangle C, C++, Java, Python
19. Perfect Number C, C++, Java, Python
20. Prefix-Postfix-Infix Interconversion C++, Python
21. Prime Number C, C++, Java, Python
22. Reverse Integer C, C++, Java, Python
23. Roman to Decimal converter C, C++, Java, Python
24. Sieve Eratosthenes Algorithm C, C++, Java,Python
25. Strong Number C, C++, Java, Python
26. Sudoku Solver C, C++, Java, Python
27. Zeller's Algorithm C, C++, Java, Python

Optimization

No. Algorithm Name Available languages
1. Ant Colony Optimization Python
2. Genetic Algorithm C++, Python
3. Grey Wolf Optimization C, C++, Java, Python
4. Hill Climbing Algorithm C, C++, Java, Python
5. Particle Swarm Optimization C++, Python
6. Shuffled Frog Leaping Algorithm C++, Python

Pattern Matching

No. Algorithm Name Available languages
1. Aho-Corasick Algorithm C, C++, Java, Python
2. Boyer Moore Algorithm C, C++, Java, Python
3. KMP Algorithm C, C++, Java, Python
4. Rabin Karp C++, Python
5. Z - Algorithm C, C++, Java, Python

Recursion

No. Algorithm Name Available languages
1. String Permutation C, C++, Java, Python
2. Tower of Hanoi C, C++, Java, Python

Searching

No. Algorithm Name Available languages
1. Binary Search on 2D Matrix C,C++, Java, Python
2. Binary Search C, C++, Java, Python
3. Exponential Search C, C++, Java, Python
4. Fibonacci Search C, C++, Java, Python
5. Jump Search C, C++, Java, Python
6. Linear Search C, C++, Java, Python
7. Order Agnostic Binary Search C, C++, Java, Python
8. Ternary Search C, C++, Java, Python

Sorting

No. Algorithm Name Available languages
1. 3 Sum Problem C, C++, Java, Python
2. Bead Sort C, C++, Java, Python
3. Bingo Sort C, C++, Java, Python
4. Bogo Sort C, C++, Java, Python
5. Bubble Sort C, C++, Java, Python
6. Bucket Sort C, C++, Java, Python
7. Comb Sort C, C++, Java, Python
8. Counting Sort C, C++, Java,Python
9. Cyclic Sort C, C++, Java, Python
10. Cocktail Sort C, C++, Java, Python
11. Dutch National Flag C, C++, Java, Python
12. Gnome Sort C, C++, Java, Python
13. Heap Sort C, C++, Java, Python
14. Insertion Sort C, C++, Java, Python
15. Intro Sort C, C++, Java, Python
16. Merge Sort C, C++, Java, Python
17. Odd-Even Sort / Brick Sort C, C++, Java, Python
18. Pigeon-Hole Sort C, C++, Java, Python
19. Quick Sort C, C++, Java, Python
20. Radix Sort C, C++ Java, Python
21. Selection Sort C, C++, Java, Python
22. Shell Sort C, C++, Java, Python
23. Tim Sort C, C++, Java, Python
24. Topological Sort C++
25. Wave Sort C++, Java, Python

Stacks

No. Algorithm Name Available languages
1. Max Area in Histogram C, C++, Java, Python
2. Next Greater Element C, C++, Java, Python
3. Rain Water Problem C, C++, Java, Python
4. Stack Using Priority Queue C, C++, Java, Python

Strings

No. Algorithm Name Available languages
1. Beautiful String Algorithm C, C++, Java, Python
2. Camel Case Algorithm C, C++, Java, Python
3. Manacher's Algorithm C, C++, Java, Python

Sub-Arrays

No. Algorithm Name Available languages
1. Boyer-Moore Majority Voting C, C++, Python
2. Kadane's Algorithm C++, Java, Python
3. Shortest Unsorted Continuous Sub-Arrays C, C++, Java, Python

Trees

No. Algorithm Name Available languages
1. AO* Tree Java, Python
2. AVL Tree C, C++, Java, Python
3. Binary Search Tree C, C++
4. Binary Tree to BST C, C++, Java, Python
5. Binary Tree Views(Left, Right, Top, Bottom) C, C++, Java, Python
6. Morris Traversal C, C++, Python
7. Red-Black Tree C++, Java, Python
8. Splay Trees C, C++, Java, Python
9. Symmetric Tree Algorithm C, C++, Java, Python
10. Tree Traversal C, C++, Java, Python
11. Trie C++, Java
12. Van Emde Boas Tree C, C++, Java, Python

Contributors πŸ«‚


Steps for Contributing πŸš€

Refer to this YouTube Video for reference!


  • Fork and clone the Repo by typing the following commands in the terminal
$ git clone https://github.com/Kumar-laxmi/Algorithms.git

$ cd Algorithms
  • Now to add your resource to website, add an object with keys same as listed in existing objects in the file.
  • Save and commit your code.
  • Push to your fork of the repository , navigate to original repository and make a pull request.

Screenshot 2022-10-23 at 8 03 11 AM
Screenshot 2022-10-23 at 8 03 31 AM
  • Clone the Repository after forking
$ git clone https://github.com/<your-github-username>/Algorithms.git

$ cd algorithms
  • Make changes to the code(for ex- add an update route)

  • Create a Branch using:

$ git checkout -b <branch-name>
  • Stage your changes using:
$ git add .
  • Commit your changes using:
$ git commit -m "add any comment"
  • Push the changes to the forked repository using:
$ git push origin <branch-name>
  • Navigate to the original repository and make a pull request
  • In case of merge conflict fetch and merge from the remote repository

Please don't forget to update the Available Resources section

Happy?? Star ⭐ this Repo. 🀩

algorithms's People

Contributors

kumar-laxmi avatar paritosh-j avatar atul1510 avatar shubh08am avatar dharnish38 avatar manavlohia945 avatar abhilash1781 avatar stiwari-ds avatar swastik-akhil avatar sumitkr2000 avatar viveksondhiya avatar nikitagupta-17 avatar vijay-kumar-yadav avatar papri24majumder avatar mvpamansingh avatar kapil4457 avatar ayatisonkar avatar shravanii2308 avatar aniketgupta03 avatar goyalh4164 avatar sinhasaurabh079 avatar sha0urya avatar rayarka26 avatar nikita06211 avatar kritika2313 avatar shailja2727 avatar abhinavcode13 avatar arbtrage avatar muskan467 avatar ayushete02 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.