Skip to content

krishnasahoo11156/DSA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

border-top comment class-def method print border-bottom



GitHub followers  ·  Profile Views  ·  Repo Stars


✨ "The journey of a thousand lines begins with a single public static void main." ✨


🌊 Live Journey Ticker

Journey ticker

🎬 Concepts in Motion

Concepts carousel



label syntax io conditionals loops recursion

📋 Module Progress Tracker

# Module Topic Status Files
01 flow-of-program 🌊 Flow of Program Done 5
02 first-java ☕ First Java Done 9
03 conditionals-loops 🔁 Conditionals & Loops 🔄 In Progress
04 functions ⚙️ Functions ⏭️ Next Up
05 arrays 📦 Arrays ⬜ Not Started
06 searching 🔍 Searching ⬜ Not Started
07 sorting 🔃 Sorting ⬜ Not Started
08 strings 🔤 Strings ⬜ Not Started
09 patterns 🔷 Patterns ⬜ Not Started
10 recursion 🌀 Recursion ⬜ Not Started
11 bitwise 💡 Bitwise Ops ⬜ Not Started
12 math ➗ Math ⬜ Not Started
13 complexities 📈 Complexities ⬜ Not Started
14 oop 🏛️ OOP ⬜ Not Started
15 linkedlist 🔗 Linked List ⬜ Not Started
16 stack-queue 🗂️ Stack & Queue ⬜ Not Started
17 trees 🌳 Trees ⬜ Not Started
18 heaps ⛰️ Heaps ⬜ Not Started

Legend:   ✅ Done  |  🔄 In Progress  |  ⏭️ Next Up  |  ⬜ Not Started


📁 Repository Structure

📦 DSA/
│
├── 📄 README.md
│
├── 📂 first-java/                     ← 📍 Module 02 — ACTIVE 🔄
│   ├── ☕ Armstrong.java              # Armstrong numbers in a range 🔢
│   ├── ☕ Calculator.java             # Arithmetic: + − × ÷  via if-else
│   ├── ☕ CurrencyConverter.java      # INR → USD  (÷ 88 exchange rate)
│   ├── ☕ EvenOdd.java                # Even / Odd check  (num % 2)
│   ├── ☕ Fibonacii.java              # Fibonacci sequence generator 🌀
│   ├── ☕ Greeting.java               # Personalised welcome greeting
│   ├── ☕ LargestNumber.java          # Largest of 2 numbers  (if-else)
│   ├── ☕ Palindrome.java             # Palindrome checker (two-pointer) 🔁
│   └── ☕ SimpleInterest.java         # SI = (P × R × T) / 100
│
├── 📂 flow-of-program/                ← ✅ Module 01 — COMPLETE
│   ├── ☕ HCFandLCM.java              # GCD & LCM calculator
│   ├── ☕ LeapYear.java               # Leap year validator
│   ├── ☕ Table.java                  # Multiplication table generator
│   ├── ☕ Sum.java                    # Accumulate until 'x' is typed
│   └── ☕ Scrapfile.java              # Logic playground / scratch pad
│
└── 📂 upcoming/
    ├── conditionals-loops/            ← Module 03 ⏭️
    ├── functions/                     ← Module 04
    ├── arrays/                        ← Module 05
    └── ...                            ← Modules 06–18

🔍 Module 02 — First Java: Deep Dive (9 Programs)

Terminal sim

🧮 Calculator.java — Two numbers + operator → Result

Concept: if / else-if chain  |  Input: int, int, char

char op = sc.next().charAt(0);

if      (op == '+') System.out.println("Sum: "      + (a + b));
else if (op == '-') System.out.println("Difference: "+ (b - a));
else if (op == '*') System.out.println("Product: "  + (a * b));
else if (op == '/') System.out.println("Quotient: " + (a / b));
else                System.out.println("Invalid operator!");
Enter the first number  : 12
Enter the second number : 4
Enter the operation     : *
The product of 12 and 4 is : 48
💱 CurrencyConverter.java — INR → USD

Concept: Integer arithmetic  |  Rate: 1 USD = 88 INR

int usd = (rupees / 88);
System.out.print("The conversion of " + rupees + " rupees in usd is : " + usd);
Enter the amount in rupees : 50000
The conversion of 50000 rupees in usd is : 568
🔢 EvenOdd.java — Is it Even or Odd?

Concept: Modulus operator %

if (num % 2 == 0) System.out.println(num + " is Even");
else              System.out.println(num + " is Odd");
Enter a number: 7
7 is Odd
🌀 Fibonacii.java — The classic sequence!

Concept: Loops, variable swapping  |  Output: 0, 1, 1, 2, 3, 5, 8, ...

int a = 0, b = 1;
while (a <= n) {
    System.out.print(a + " ");
    int temp = a + b;
    a = b;
    b = temp;
}
Enter the limit : 50
0 1 1 2 3 5 8 13 21 34
👋 Greeting.java — Hello, World... personalised!

Concept: String input, Scanner

System.out.println("Hello " + name + " Welcome to my DSA journey");
Enter your name: Krishna
Hello Krishna Welcome to my DSA journey
🏆 LargestNumber.java — Who wins: a or b?

Concept: Comparison with if-else

if (a > b) System.out.println("Largest number is : " + a);
else       System.out.println("Largest number is : " + b);
Enter the first number  : 42
Enter the second number : 17
Largest number is : 42
📐 SimpleInterest.java — Finance meets Java

Concept: Arithmetic formula  |  SI = (P × R × T) / 100

float interest = (principle * rate * time) / 100;
System.out.println("The simple interest is : " + interest);
Enter the principle amount : 10000
Enter the rate of interest : 5
Enter the time             : 3
The simple interest is     : 1500.0
🔢 Armstrong.java — Armstrong numbers in a range

Concept: Math.pow(), digit extraction, String.valueOf().length() for digit count

for (int num = start; num <= end; num++) {
    int digits = String.valueOf(num).length();
    int temp = num, sum = 0;
    while (temp > 0) {
        int digit = temp % 10;
        sum += Math.pow(digit, digits);
        temp /= 10;
    }
    if (sum == num) System.out.println(num);
}
Enter starting number: 1
Enter ending number: 500
Armstrong numbers between 1 and 500 are:
1
153
370
371
407
🔁 Palindrome.java — Is it a Palindrome?

Concept: Two-pointer technique on a String

String n = sc.nextLine().toLowerCase();
int left = 0, right = n.length() - 1;
boolean ans = true;
while (left < right) {
    if (n.charAt(left) != n.charAt(right)) { ans = false; break; }
    left++; right--;
}
System.out.println(ans ? "The String is a palindrome" : "The String is not a palindrome");
Enter the string : Racecar
The String is a palindrome

Enter the string : Hello
The String is not a palindrome

🚀 Getting Started

Clone animation

✅ Prerequisites

Tool Minimum Recommended
☕ JDK 17+ 25+
🖥️ IDE Any VS Code + Java Extension Pack
🐙 Git Any Latest

⚡ Clone & Run in 3 Commands

# 1️⃣  Clone
git clone https://github.com/krishnasahoo11156/DSA.git && cd DSA

# 2️⃣  Compile
javac first-java/Fibonacii.java

# 3️⃣  Run
java -cp first-java Fibonacii

💡 VS Code users: Hit the ▶ Run button — the Extension Pack handles everything automatically!


📊 Stats Dashboard

📦 Total Modules ✅ Completed 🔄 In Progress ☕ Java Files
18 1 1 14

GitHub Stats   Top Languages



GitHub Streak

🛠️ Tech Stack

Tech Stack Icons



Java JDK 25 VS Code Git GitHub


🎯 Learning Phases — The Full Blueprint

Learning phases
╔═══════════════════════════════════════════════════════════════════╗
║  PHASE 1 ✅→🔄   Foundations   │  Flow · Syntax · Types · I/O   ║
║  PHASE 2 ⏭️        Logic        │  Conditions · Loops · Methods  ║
║  PHASE 3 ⬜        Core DSA     │  Arrays · Search · Sort · Str  ║
║  PHASE 4 ⬜        Advanced     │  Recursion · Bitwise · Math    ║
║  PHASE 5 ⬜        OOP          │  Classes · Inheritance · DS    ║
║  PHASE 6 ⬜        Trees&Heaps  │  BST · AVL · Heaps · PQ       ║
╚═══════════════════════════════════════════════════════════════════╝

👨‍💻 Author

Author intro

GitHub


If this repo helped you even a little — drop a— it genuinely means the world! 🌍


Made with ❤️ and lots of ☕ · Krishna Sahoo · 2025

"Every expert was once a beginner. The only difference? They kept going." 🚀

About

In this repo I am trying to include all the question which I will be solving while learning DSA in java

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages