Skip to content
 
 

Repository files navigation

Simple DSA Challenges for Hacktoberfest 2025 🚀

Welcome to Simple DSA, a beginner-friendly collection of Data Structures and Algorithms problems perfect for your Hacktoberfest contribution! This repository aims to provide simple challenges to help you practice basic programming concepts and get your first successful pull requests (PRs) counted.

Goal: Complete the challenges below in any programming language and submit a PR to contribute.


💻 Questions to Be Solved

You are free to contribute solutions in any language you are comfortable with (C, C++, Java, Python, etc.).

Basic Programming & Arithmetic (1-9)

  1. "Hello, World!" Program 🌍
  2. Program to Print an Integer (Entered by the User)
  3. Program to Add Two Integers
  4. Program to Multiply two Floating Point Numbers
  5. Program to Find ASCII Value of a Character
  6. Program to Compute Quotient and Remainder
  7. Program to Find the Size of int, float, double and char
  8. Program to Demonstrate the Working of Keyword long
  9. Program to Swap Two Numbers

Control Flow & Decision Making (10-16)

  1. Program to Check Whether a Number is Even or Odd
  2. Program to Check Whether a Character is Vowel or Consonant
  3. Program to Find the Largest Number Among Three Numbers
  4. Program to Find all Roots of a Quadratic Equation
  5. Program to Check Leap Year
  6. Program to Check Whether a Number is Positive or Negative
  7. Program to Check Whether a Character is an Alphabet or not

Loops, Functions & Recursion (17-42)

  1. Program to Calculate the Sum of Natural Numbers
  2. Program to Find Factorial of a Number
  3. Program to Generate Multiplication Table
  4. Program to Display Fibonacci Sequence
  5. Program to Find GCD of two Numbers
  6. Program to Find LCM of two Numbers
  7. Program to Display Characters from A to Z Using Loop
  8. Program to Count Number of Digits in an Integer
  9. Program to Reverse a Number
  10. Program to Calculate the Power of a Number
  11. Program to Check Whether a Number is Palindrome or Not
  12. Program to Check Whether a Number is Prime or Not
  13. Program to Check Armstrong Number
  14. Program to Display Factors of a Number
  15. Program to Make a Simple Calculator Using switch...case
  16. Program to Display Prime Numbers Between Intervals Using Function
  17. Program to Check Prime or Armstrong Number Using User-defined Function
  18. Program to Check Whether a Number can be Expressed as Sum of Two Prime Numbers
  19. Program to Find the Sum of Natural Numbers using Recursion
  20. Program to Find Factorial of a Number Using Recursion
  21. Program to Find G.C.D Using Recursion
  22. Program to Convert Binary Number to Decimal and vice-versa
  23. Program to Convert Octal Number to Decimal and vice-versa
  24. Program to Convert Binary Number to Octal and vice-versa
  25. Program to Reverse a Sentence Using Recursion
  26. Program to Calculate the Power Using Recursion

Arrays & Matrices (43-52)

  1. Program to Calculate Average Using Arrays
  2. Program to Find Largest Element in an Array
  3. Program to Calculate Standard Deviation
  4. Program to Add Two Matrices Using Multi-dimensional Arrays
  5. Program to Multiply Two Matrices Using Multi-dimensional Arrays
  6. Program to Find Transpose of a Matrix
  7. Program to Multiply Two Matrices by Passing Matrix to a Function
  8. Program to Access Array Elements Using Pointer
  9. Program to Swap Numbers in Cyclic Order Using Call by Reference
  10. Program to Find Largest Number Using Dynamic Memory Allocation

Strings & Structures (53-62)

  1. Program to Find the Frequency of Characters in a String
  2. Program to Count the Number of Vowels, Consonants and so on
  3. Program to Remove all Characters in a String Except Alphabets
  4. Program to Find the Length of a String
  5. Program to Concatenate Two Strings
  6. Program to Copy String Without Using strcpy()
  7. Program to Sort Elements in Lexicographical Order (Dictionary Order)
  8. Program to Store Information of a Student Using Structure
  9. Program to Add Two Distances (in inch-feet) System Using Structures
  10. Program to Add Two Complex Numbers by Passing Structure to a Function

Advanced Challenges & LeetCode Style (63, 114, 115)

  1. Program to find Container with most water (LeetCode 11)
  2. Merge Strings Alternately: You are given two strings word1 and word2. Merge the strings by adding letters in alternating order, starting with word1. If a string is longer than the other, append the additional letters onto the end of the merged string. (LeetCode 1768)
  3. Find the Number Closest to Zero: Given an integer array nums of size $n$, return the number with the value closest to 0 in nums. If there are multiple answers (e.g., -5 and 5), return the smallest one (e.g., -5).

🛠️ How to Contribute

To participate in Hacktoberfest and contribute to this repository, please follow these steps carefully:

Prerequisites

  1. Register for HacktoberFest on the official website.
  2. Star this repository ⭐ – Click on the "Star" button at the top right corner of the page. This step is mandatory to get your pull request accepted.

Submission Steps

  1. Fork this repository by clicking the "Fork" button in the top right corner.
  2. Clone your forked repository to your local machine:
    git clone [https://github.com/YOUR_USERNAME/Simple-DSA.git](https://github.com/YOUR_USERNAME/Simple-DSA.git)
  3. Navigate into the project directory:
    cd Simple-DSA
  4. Create a new branch for your contributions. Use a descriptive name like add-solution-q1-python:
    git checkout -b your-branch-name
  5. Make your changes:
    • Create a folder for the language you are using (e.g., C++, Python, Java).
    • Inside the language folder, add your solution files. Name the file according to the question number, e.g., q1_hello_world.c or q25_reverse_number.py.
    • NOTE: Make sure to add your profile details to contributors.json in the root directory.
  6. Commit your changes with a meaningful message:
    git add .
    git commit -m "feat: Added solution for Q[Question Number] in [Language]"
  7. Push your branch to GitHub:
    git push origin your-branch-name
  8. Create a Pull Request (PR): Once your branch is pushed, navigate to your forked repository on GitHub and click the "Compare & pull request" button to submit your changes to the original repository.

📜 Rules for Participation

To ensure your PR is successful and counts toward HacktoberFest:

  • Make sure your PR follows HacktoberFest guidelines.
  • Only one PR per issue. Multiple PRs for the same issue will not be accepted.
  • Contributions must be meaningful. Avoid simple typo fixes or formatting changes that do not add a functional solution.
  • A PR must solve at least one of the listed questions.

🎉 Congratulations!

You have successfully contributed to Simple DSA.

Thanks for your contribution and for participating in Hacktoberfest 2025 ✨🎉🎊

About

A collection of DSA tasks done in any of the mentioned language. Contribute your own unique code in your preferred language!

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages