Skip to content

Latest commit

 

History

History
65 lines (42 loc) · 3.33 KB

README.md

File metadata and controls

65 lines (42 loc) · 3.33 KB

📚 TUF-Strivers_A2Z_DSA

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.

🔗 Striver's A2Z DSA Sheet

🗂️ Repository Structure

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.

Explanation of Folders:

  1. 📝 Notes: Contains general notes and patterns relevant to coding problems. Use coding_patterns.md to document any patterns or important notes.

  2. 👤 [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
      • maths: Basic mathematical problems like counting digits, checking prime numbers, etc.
        • Example: check-if-a-number-is-prime-or-not.js
      • pattern: Problems related to generating patterns.
        • Example: pattern.js
      • recursion: Recursive problems, including factorial, Fibonacci, etc.
        • Example: factorial-of-a-number.js
    • 2-sorting-technique: This folder covers different sorting algorithms. Each file represents a specific sorting algorithm.

      • Example: quick-sort.js
    • and so on...

📑 File Naming Conventions

  • 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.

🤝 Contribution Guidelines

  1. 🍴 Fork the repository to your GitHub account.
  2. 📥 Clone the forked repository to your local machine.
  3. Create your username's folder inside the repository, or directly use the 📁 Sample_folder_structure folder as a template.
  4. 🔧 Add or modify code according to the folder structure and file naming conventions.
  5. ✅ Commit your changes with a clear message. Example: Added solution for GCD problem.
  6. 📤 Push the changes to your forked repository.
  7. Create a 🔃 Pull Request (PR) to the main repository.

📝 Example Contribution

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.

📚 Resources

  • 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.

🔍 Conclusion

Consistency is key! By following this structure, we ensure that the repository remains organized, accessible, and valuable to everyone in the learning community.