Skip to content

technojam/Ultimate_Algorithms_Repository

Repository files navigation

DATA STRUCTURE AND ALGORITHMS(C++)

DISCLAMER

  1. Knowing a programming language and DSA are two different things .

    eg. you might be knowing python , c, c++ , java etc but if you know DSA then you can implement them in any programming language with minor syntatic modifications.

  2. This Repository does not intend to spoon feed , it can be used for studying in the right direction , but the efforts should be solely yours .

WHY ?

  1. If you want to crack the interviews and get into the product based companies.
  2. Nearly everything functional in computer science is an implementation of data structure along with certain algorithms
  3. If you love to solve the real-world complex problems.

ROADMAP

  1. 1-D Arrays
  2. 2-D Arrays
  3. Array ADT
  4. Character Arrays
  5. Strings
  6. Pointers
  7. Dynamic Memory Allocation
  8. STL - ALGO'S
  9. Sorting Algorithms
  10. BINARY SEARCH
  11. Vectors
  12. Bit Manipulation
  13. Number Theory
  14. Recursion
  15. Backtracking
  16. Space and Time Complexities
  17. OOP'S
  18. Linked List
  19. Stacks
  20. Queues
  21. Deque
  22. Binary Tree
  23. Binary Search Tree
  24. Heaps
  25. Hashing
  26. Greedy Algorithms
  27. Dynamic Programming
  28. Graph
  29. Segment Tree/Fenwick Tree

Contributing

When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.

Please note we have a code of conduct, please follow it in all your interactions with the project.

Pull Request Process

  1. Ensure that every PR is linked with an issue, all standalone PRs will be rejected by the maintainers.
  2. Discuss all the features and requirements in issue section before sending an PR.
  3. It would be really appreciated if you try to look into previous created issue instead of a new one.
  4. Use proper template and be describe all the changes that you are addressing in a PR.
  5. Add relevant comments explaining what the code is all about (if possible write the Time and Space complexities)
  6. Any type pf plagrised code or fishy code will not be merged.
  7. Once you follow above points and your PR gets approved by more than 2 reviewers it will be merged by the maintainers.

Code of Conduct

Our Pledge

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.

Our Standards

Examples of behavior that contributes to creating a positive environment include:

  • Using welcoming and inclusive language
  • Being respectful of differing viewpoints and experiences
  • Gracefully accepting constructive criticism
  • Focusing on what is best for the community
  • Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

  • The use of sexualized language or imagery and unwelcome sexual attention or advances
  • Trolling, insulting/derogatory comments, and personal or political attacks
  • Public or private harassment
  • Publishing others' private information, such as a physical or electronic address, without explicit permission
  • Other conduct which could reasonably be considered inappropriate in a professional setting

Contact Info

Feel free to contact us to discuss any issues, questions, or comments. Our contact info can be found on our GitHub page.