Welcome to the Data Structures & Algorithms repository!
This is an evolving resource dedicated to practicing and mastering a wide range of data structures and algorithms. Our goal is to provide a comprehensive collection of problems and solutions covering the entire spectrum of DSA concepts.
- π Diverse Problem Set: A growing collection of problems related to various data structures and algorithms.
- π§ Practice Challenges: Practical coding challenges designed to enhance problem-solving skills and prepare for interviews.
- π Algorithm Implementations: Current implementations of fundamental algorithms with detailed explanations.
- π¬ Ongoing Development: The repository is continuously updated to include new problems, techniques, and solutions.
Here's whatβs available in the repository so far:
- π Search Algorithms: Implementations of binary search, linear search, order-agnostic search, and more.
- π’ Array Operations: Solutions for searching in different types of arrays, such as reverse-sorted and order-agnostic arrays.
- π Specialized Problems: Finding first and last occurrences of elements and other unique challenges.
Array.exe
: Executable file for various array operations.Array_1_LS.cpp
: C++ source code for linear search.Array_2.1_BS_Decreasing_Sorted_Array.cpp
: C++ source code for searching in reverse-sorted arrays.Array_2.2_BS_Order_Agnostic_Search.cpp
: C++ source code for order-agnostic search.Array_2.3_BS_First_And_Last_Occurance.cpp
: C++ source code for finding the first and last occurrence of an element.
- π Comprehensive Coverage: We aim to cover all major data structures and algorithms, including advanced topics.
- π Continuous Updates: The repository will be regularly updated with new problems, solutions, and improvements.
- π§ Community Contributions: We encourage contributions from the community to enhance the repository.
We love contributions! Help us make this repository even better by contributing to the project. Your input is highly valued. π€
- Fork the Project: Click the "Fork" button at the top right of the repository page.
- Create your Feature Branch:
git checkout -b feature/AmazingFeature
- Commit your Changes:
git commit -m 'Add some AmazingFeature'
- Push to the Branch:
git push origin feature/AmazingFeature
- Open a Pull Request:
- Navigate to the "Pull Requests" tab in the repository.
- Click "New Pull Request".
- Select your feature branch and compare it with the main branch.
- Add a descriptive title and comments about your changes.
- Click "Create Pull Request".
- Your pull request will be reviewed by the maintainers. They may suggest or request changes.
- Once approved, your changes will be merged into the main branch.
- @AshimaSingh0610 - Creator & Maintainer
We appreciate the following contributors for their valuable input:
- @Amartya-007 - Contributor
Feel free to reach out if you have any questions or need further assistance. Thank you for contributing!