Welcome to OpenSauce! Your gateway to open-source contributions for Hacktoberfest 2025.
This repository is dedicated to Data Structures and Algorithms (DSA) implementations in multiple programming languages. Whether you're a beginner or an experienced developer, contribute your DSA solutions and be part of the open-source community!
This repository contains language-specific folders for DSA contributions:
OpenSauce/
├── C/
├── C++/
├── Java/
├── Python/
├── JavaScript/
├── Go/
├── Rust/
├── TypeScript/
├── Kotlin/
├── Swift/
├── Ruby/
├── PHP/
├── Dart/
└── Scala/
Each language folder contains its own README with specific guidelines and suggested organization.
- Fork this repository to your GitHub account
- Clone your fork to your local machine
git clone https://github.com/your-username/OpenSauce.git cd OpenSauce - Choose a language folder you want to contribute to
- Create your DSA implementation:
- Follow the naming conventions specified in each language's README
- Organize code by topic (arrays, trees, graphs, sorting, etc.)
- Include comments explaining your algorithm
- Add time and space complexity analysis
- Create a new branch:
git checkout -b add-algorithm-name
- Commit your changes:
git add . git commit -m "Add [algorithm-name] in [language]"
- Push to your fork:
git push origin add-algorithm-name
- Create a Pull Request from your fork to this repository
- ✅ Data structure implementations (arrays, linked lists, trees, graphs, etc.)
- ✅ Algorithm implementations (sorting, searching, dynamic programming, etc.)
- ✅ Well-documented code with complexity analysis
- ✅ Test cases or example usage
- Include clear comments explaining the logic
- Add time and space complexity in comments
- Follow the coding conventions of the language
- Provide example usage or test cases
- Use meaningful variable and function names
- ❌ Duplicate implementations (check existing code first)
- ❌ Poorly documented code
- ❌ Copied code without understanding
- ❌ Unrelated files or spam
Each language folder supports the following topics:
- Arrays - Array manipulation and problems
- Linked Lists - Singly, doubly, circular linked lists
- Stacks - Stack implementations and applications
- Queues - Queue implementations and variations
- Trees - Binary trees, BST, AVL, heaps, tries
- Graphs - Graph representations and algorithms (BFS, DFS, Dijkstra, etc.)
- Sorting - Bubble, merge, quick, heap sort, etc.
- Searching - Binary search, linear search, etc.
- Dynamic Programming - DP problems and solutions
- Greedy Algorithms - Greedy approach problems
- Backtracking - Backtracking problems
- Mathematics - Number theory, GCD, prime numbers, etc.
- Strings - String manipulation and algorithms
This repository is participating in Hacktoberfest 2025!
- Complete 6 quality pull requests during October to earn your Hacktoberfest swag
- Make sure your PRs are meaningful contributions, not spam
- Check out Hacktoberfest Official Website for more details
- Be respectful and inclusive
- Provide constructive feedback
- Help others learn and grow
- No spam or low-quality contributions
- Check the language-specific README in each folder
- Open an issue if you have questions
- Review existing pull requests for examples
Thank you to all contributors who help make this project better!
Happy Coding and Happy Hacktoberfest! 🎃👨💻👩💻