/Algorithms

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

Primary LanguageC++Apache License 2.0Apache-2.0

image

A repository for all Algorithms



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 - 10th Apr 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

No. Algorithm Name Available languages Category
1. RSA Python Cryptography
2. Huffman Coding C, C++, Java,Python Data Compression
3. Banker's Algorithm C, Python Deadlock Avoidance
4. Karatsuba Algorithm C++, Java, Python Divide and Conquer
5. 0/1 Knapsack C, C++, Java, Python Dynamic Programming
6. Edit Distance C++ Dynamic Programming
7. Longest Common Subsequence C++ Dynamic Programming
8. Matrix Chain Multiplication C++ Dynamic Programming
9. Travelling Salesman Problem C Dynamic Programming
10. Bellman Ford C++ Graphs
11. Dijkstra C, C++, Java, Python Graphs
12. Floyd Warshall C, C++, Java, Python Graphs
13. Kosaraju's Algorithm C++ Graphs
14. Prim's Algorithm C++, Java Graphs
15. Tarjan Algorithm C++ Graphs
16. Activity Selection C, C++, Java, Python Greedy Algorithm
17. Fractional Knapsack C, C++, Python Greedy Algorithm
18. Job Sequencing C++, Python Greedy Algorithm
19. Merge Interval Algorithm C, C++, Java, Python Greedy Algorithm
20. Addition of two Linked Lists C++ Linked List
21. Circular Linked List C, C++, Python Linked List
22. Doubly Linked List C++, Java Linked List
23. Intersection of two Linked Lists C++ Linked List
24. LRU Cache Design C, C++, Java, Python Linked List
25. Singly Linked List C, C++, Python Linked List
26. Decision Tree Python Machine Learning
27. Linear Regression C++, Python Machine Learning
28. Logistic Regression C++, Python Machine Learning
29. Armstrong Numbers C, C++, Java, Python Maths
30. Binary Exponentiation C++ Maths
31. Bisection Algorithm C, C++, Java, Python Maths
32. Decimal <-> Binary Converter C, Python Maths
33. Factors C, C++, Java, Python Maths
34. GCD & LCM C, C++, Java, Python Maths
35. Prime Number C, C++, Java, Python Maths
36. Reverse Integer C++ Maths
37. Sieve Eratosthenes Algorithm C, C++, Java,Python Maths
38. Rabin Karp C++ Pattern Matching
39. BFS and DFS C++, Java Searching
40. Binary Search on 2D Matrix Java Searching
41. Binary Search C, C++, Java, Python Searching
42. Linear Search C, C++, Java, Python Searching
43. Sliding Window Problems C++ Sliding Window
44. Bubble Sort C, C++, Java, Python Sorting
45. Counting Sort C++ Sorting
46. Cyclic Sort C++, Java, Python Sorting
47. Dutch National Flag C++, Java, Python Sorting
48. Gnome Sort C++, Java, Python Sorting
49. Heap Sort C, C++, Java, Python Sorting
50. Insertion Sort C, C++, Java, Python Sorting
51. Merge Sort C, C++, Java, Python Sorting
52. Quick Sort C, C++ Sorting
53. Selection Sort C, C++, Java, Python Sorting
54. Topological Sort C++ Sorting
55. Wave Sort C++, Python Sorting
56. Max Area in Histogram C, C++, Java, Python Stacks
57. Next Greater Element Python Stacks
58. Rain Water Problem C, C++, Java, Python Stacks
59. Beautiful String Algorithm C, C++, Java, Python Strings
60. Boyer-Moore Majority Voting C++, Python Sub-Arrays
61. Kadane's Algorithm C++, Java Sub-Arrays
62. AVL Tree C++, Java, Python Trees
63. Binary Search Tree C, C++ Trees
64. Binary Tree to BST C, C++, Java, Python Trees
65. Morris Traversal C, C++, Python Trees
66. Red-Black Tree C++, Python Trees
67. Tree Traversal C, C++, Java, Python Trees

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 techsquad-community-website
  • 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. 🤩