Welcome to the TUF-Strivers_A2Z_DSA repository! This project is dedicated to practicing Data Structures and Algorithms (DSA) collaboratively using the TUF platform. It aims to enhance our problem-solving skills, track our progress, and foster a competitive and supportive learning environment.
The repository is organized into the following main folders:
👤 user-name/
: Folder dedicated to a particular user.📝 Notes/
: Folder dedicated to sharing study resources.📁 Sample_folder_structure/
: Folder to get you started quickly.
-
📝 Notes: Contains general notes and patterns relevant to coding problems. Use
coding_patterns.md
to document any patterns or important notes. -
👤 [your-username]: Replace
[your-username]
with your GitHub username or preferred identifier. This is where all your contributions will be organized.-
1-basic: This folder covers the basics, including hashing, maths, patterns, recursion, and generate. Each subfolder contains specific problems and their solutions.
- hashing: Code related to hashing problems.
- Example:
count-frequency-of-each-element-in-the-array.js
- Example:
- maths: Basic mathematical problems like counting digits, checking prime numbers, etc.
- Example:
check-if-a-number-is-prime-or-not.js
- Example:
- pattern: Problems related to generating patterns.
- Example:
pattern.js
- Example:
- recursion: Recursive problems, including factorial, Fibonacci, etc.
- Example:
factorial-of-a-number.js
- Example:
- hashing: Code related to hashing problems.
-
2-sorting-technique: This folder covers different sorting algorithms. Each file represents a specific sorting algorithm.
- Example:
quick-sort.js
- Example:
-
and so on...
-
- Use kebab-case or snake_case or any case of your choice for file names. For example,
check-if-a-number-is-prime-or-not.js
. - Ensure that file names clearly indicate the problem or algorithm they solve.
- 🍴 Fork the repository to your GitHub account.
- 📥 Clone the forked repository to your local machine.
- Create your username's folder inside the repository, or directly use the
📁 Sample_folder_structure
folder as a template. - 🔧 Add or modify code according to the folder structure and file naming conventions.
- ✅ Commit your changes with a clear message. Example:
Added solution for GCD problem
. - 📤 Push the changes to your forked repository.
- Create a 🔃 Pull Request (PR) to the main repository.
If you’re adding a solution to the "Check if a number is prime" problem, navigate to your folder and place the solution file in 1-basic/maths/check-if-a-number-is-prime-or-not.js
.
- Refer and add materials in the
Notes
folder to share helpful study resources and insights with others. - Make use of the DSA A to Z Sheet as your guide.
Consistency is key! By following this structure, we ensure that the repository remains organized, accessible, and valuable to everyone in the learning community.