/AlgorithmsAndDataStructure

Algorithms And DataStructure Implemented In Python & CPP, Give a Star ๐ŸŒŸIf it helps you

Primary LanguagePythonMIT LicenseMIT

website title image

๐Ÿ‘‰ A Collection of Algorithm And Data Structures in Cpp and Python ๐Ÿ‘ˆ

github stars github forks code size

open issues closed issues open pull request closed pull request

hacktoberfest MIT license

discord invite last contributions total contributors

Anyone Interested for manage repository for upcoming HacktoberFest2021.Email us on pycontributors@gmail.com

  • Must be a Student
  • Must have knowledge of Git Commands ex- branching, merging etc
  • Must have Python/C++ DS and Algo knowledge to review code.

Introduction

Data structures & Algorithms are an essential part of programming. It comes under the fundamentals of computer science. It gives us the advantage of writing better and efficient code in less time. It is a key topic when it comes to Software Engineering interview questions so as developers, we must have knowledge of Data Structure and Algorithms

๐ŸŒŸ Star it ๐ŸดFork it ๐Ÿค Contribute to it!

Data Structure

In computer science, a data structure is a data organization, management, and storage format that enables efficient access and modification. Data structure is a way or a format how your data is stored in memory for effecient usage and retrieval.

Algorithms

An algorithm is a set of instructions that are used to accomplish a task, such as finding the largest number in a list, removing all the red cards from a deck of playing cards, sorting a collection of names, figuring out an average movie rating from just your friend's opinion

Algorithms are not limited to computers. They are like a set of step-by-step instructions or an even a recipe, containing things you need, steps to do, the order to do them, conditions to look for, and expected results.

Languages

  • C++
  • Python

Support

Check Contribution Guide Before Contribution.

Project Progress

Data Structures

Data Structure C++ Python Status/Remarks
Linked List Yes Yes Being improved #23
Sets Yes Yes Implemented
Stack Yes In progress #13
Queue In progress #7 In progress #12

Algorithms

Algorithm C++ Python Remarks
Searching
Binary Search No In progress #9
Jump Search In progress #39 In progress #10
Fibonacci Search No In progress #11
Sorting
Selection Sort In progress #29 In progress #30
Bubble Sort Yes Yes
Insertion Sort In progress #2 Yes
Merge Sort In progress #3 Yes
Quick Sort In progress #4 Yes
Heap Sort In progress #5 In progress #6
Radix Sort In progress #63 Yes
Recursion
Fibonacci Numbers No Yes
Fibonacci List No Yes
Factors No Yes
Recursion No Yes
Recursive Sum No Yes
Sieve
Sieve of Erosothenes No Yes
Dynamic Programming
Knapsack Problem No Yes
Longest Common Subsequence No Yes
Longest Increasing Subsequence No Yes
Merge Sort No Yes Duplicate
Fibonacci Number No Yes Duplicate
Naive Pattern Search In progress #18 In progress #17
Rabin-Karp Algorithm No
Backtracking
Suduko Solver In progress #21 No
The Knight's Tour In progress #33 In progress #32
Subset Sum In progress #36 In progress #35
Deep Learning
Activation Function No Yes
Feed Forward Normal Function No Yes
Layers No Yes
Loss Function No Yes
Optimizers No Yes
Machine Learning
Gradient Descent No Yes
Linear Regression No Yes
Logistic Regression No Yes
Decision Tree No In progress #37
K-Nearest Neighbours No In progress #38

Contributing

Before submitting a bug, please do the following: Check Contribution Guide Before Contribution.

  • Create separate issues for Python and C++.
  • You can only work on issues that you have been assigned to.
  • Use Flake8 locally for linting Python Code. pip install flake8. (We have linting checks so if your code fails it we will not merge the PR.)

Authors and acknowledgment

Show your appreciation to those who have contributed to the project.

License

For open-source projects, Under MIT License.

Maintainers

Must Read Articles

built by developers