Java Coding Interview Problems with Solutions


🔹 1. Reverse a String

Problem:

Reverse a given string.

Solution:

class Main {
public static void main(String[] args) {
String str = "hello";
String rev = "";

for (int i = str.length() - 1; i >= 0; i--) {
rev += str.charAt(i);
}

System.out.println(rev);
}
}

🔹 2. Check Palindrome

Problem:

Check if a string is palindrome.

Solution:

class Main {
public static void main(String[] args) {
String str = "madam";
String rev = new StringBuilder(str).reverse().toString();

if (str.equals(rev)) {
System.out.println("Palindrome");
} else {
System.out.println("Not Palindrome");
}
}
}

🔹 3. Find Largest Number in Array

Solution:

class Main {
public static void main(String[] args) {
int[] arr = {10, 50, 30, 90, 20};
int max = arr[0];

for (int i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}

System.out.println("Largest: " + max);
}
}

🔹 4. Find Smallest Number in Array

class Main {
public static void main(String[] args) {
int[] arr = {10, 50, 5, 90, 20};
int min = arr[0];

for (int i = 1; i < arr.length; i++) {
if (arr[i] < min) {
min = arr[i];
}
}

System.out.println("Smallest: " + min);
}
}

🔹 5. Fibonacci Series

Problem:

Print first N Fibonacci numbers.

class Main {
public static void main(String[] args) {
int n = 10;
int a = 0, b = 1;

for (int i = 1; i <= n; i++) {
System.out.print(a + " ");
int c = a + b;
a = b;
b = c;
}
}
}

🔹 6. Factorial of a Number

class Main {
public static void main(String[] args) {
int num = 5;
int fact = 1;

for (int i = 1; i <= num; i++) {
fact *= i;
}

System.out.println("Factorial: " + fact);
}
}

🔹 7. Check Prime Number

class Main {
public static void main(String[] args) {
int num = 7;
boolean isPrime = true;

for (int i = 2; i < num; i++) {
if (num % i == 0) {
isPrime = false;
break;
}
}

System.out.println(isPrime ? "Prime" : "Not Prime");
}
}

🔹 8. Sum of Array Elements

class Main {
public static void main(String[] args) {
int[] arr = {10, 20, 30};
int sum = 0;

for (int num : arr) {
sum += num;
}

System.out.println("Sum: " + sum);
}
}

🔹 9. Count Vowels in String

class Main {
public static void main(String[] args) {
String str = "education";
int count = 0;

for (char c : str.toCharArray()) {
if ("aeiou".indexOf(c) != -1) {
count++;
}
}

System.out.println("Vowels: " + count);
}
}

🔹 10. Swap Two Numbers

class Main {
public static void main(String[] args) {
int a = 10, b = 20;

int temp = a;
a = b;
b = temp;

System.out.println(a + " " + b);
}
}

🔹 11. Remove Duplicates from Array

import java.util.*;

class Main {
public static void main(String[] args) {
int[] arr = {1, 2, 2, 3, 4, 4};

Set<Integer> set = new HashSet<>();
for (int num : arr) {
set.add(num);
}

System.out.println(set);
}
}

🔹 12. Find Second Largest Number

class Main {
public static void main(String[] args) {
int[] arr = {10, 50, 30, 90, 20};

int first = Integer.MIN_VALUE;
int second = Integer.MIN_VALUE;

for (int num : arr) {
if (num > first) {
second = first;
first = num;
} else if (num > second && num != first) {
second = num;
}
}

System.out.println("Second Largest: " + second);
}
}

🔹 13. Check Armstrong Number

class Main {
public static void main(String[] args) {
int num = 153, temp = num, sum = 0;

while (num > 0) {
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}

System.out.println(temp == sum ? "Armstrong" : "Not Armstrong");
}
}

🔹 14. Reverse a Number

class Main {
public static void main(String[] args) {
int num = 1234;
int rev = 0;

while (num != 0) {
rev = rev * 10 + num % 10;
num /= 10;
}

System.out.println(rev);
}
}

🔹 15. Check Even or Odd

class Main {
public static void main(String[] args) {
int num = 10;

if (num % 2 == 0) {
System.out.println("Even");
} else {
System.out.println("Odd");
}
}
}