0% found this document useful (0 votes)
2 views11 pages

Java String 50 Unique Problems Leveled

The document contains 50 unique Java string practice problems categorized into easy, medium, and hard levels. Each problem includes a description, code snippet, output, and explanation of the solution. The problems cover various string manipulation techniques such as reversing, checking palindromes, counting characters, and more advanced concepts like anagram checks and substring manipulations.

Uploaded by

kannasrihari137
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views11 pages

Java String 50 Unique Problems Leveled

The document contains 50 unique Java string practice problems categorized into easy, medium, and hard levels. Each problem includes a description, code snippet, output, and explanation of the solution. The problems cover various string manipulation techniques such as reversing, checking palindromes, counting characters, and more advanced concepts like anagram checks and substring manipulations.

Uploaded by

kannasrihari137
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Java String - 50 Unique Practice Problems (Easy /

Medium / Hard)

Easy 1: Reverse String

Problem: Easy 1: Reverse String


String s="Java";
String rev="";
for(int i=[Link]()-1;i>=0;i--) rev+=[Link](i);
[Link](rev);

Output: avaJ

Explanation: Reverse using loop.

Easy 2: Palindrome Check

Problem: Easy 2: Palindrome Check


String s="madam";
String rev="";
for(int i=[Link]()-1;i>=0;i--) rev+=[Link](i);
[Link]([Link](rev));

Output: true

Explanation: Compare original and reversed.

Easy 3: Count Vowels

Problem: Easy 3: Count Vowels


String s="education";
int c=0;
for(char ch:[Link]())
if("aeiou".indexOf(ch)!=-1) c++;
[Link](c);

Output: 5

Explanation: Check vowels.

Easy 4: Count Consonants

Problem: Easy 4: Count Consonants


String s="hello";
int c=0;
for(char ch:[Link]())
if([Link](ch)&&"aeiou".indexOf(ch)==-1) c++;
[Link](c);

Output: 3
Explanation: Non-vowels.

Easy 5: Remove Spaces

Problem: Easy 5: Remove Spaces


[Link]("Hello World".replace(" ",""));

Output: HelloWorld

Explanation: Replace spaces.

Easy 6: Uppercase

Problem: Easy 6: Uppercase


[Link]("java".toUpperCase());

Output: JAVA

Explanation: Uppercase conversion.

Easy 7: Lowercase

Problem: Easy 7: Lowercase


[Link]("JAVA".toLowerCase());

Output: java

Explanation: Lowercase.

Easy 8: First Character

Problem: Easy 8: First Character


[Link]("Java".charAt(0));

Output: J

Explanation: charAt.

Easy 9: Last Character

Problem: Easy 9: Last Character


String s="Java";
[Link]([Link]([Link]()-1));

Output: a

Explanation: Last index.


Easy 10: Length

Problem: Easy 10: Length


[Link]("Java".length());

Output: 4

Explanation: Length.

Easy 11: Contains

Problem: Easy 11: Contains


[Link]("Java".contains("av"));

Output: true

Explanation: Check substring.

Easy 12: StartsWith

Problem: Easy 12: StartsWith


[Link]("Java".startsWith("Ja"));

Output: true

Explanation: Prefix.

Easy 13: EndsWith

Problem: Easy 13: EndsWith


[Link]("Java".endsWith("va"));

Output: true

Explanation: Suffix.

Easy 14: Trim

Problem: Easy 14: Trim


[Link](" Java ".trim());

Output: Java

Explanation: Trim.

Easy 15: Replace char


Problem: Easy 15: Replace char
[Link]("Java".replace('a','o'));

Output: Jovo

Explanation: Replace.

Easy 16: Split words

Problem: Easy 16: Split words


for(String w:"Java is easy".split(" "))
[Link](w);

Output: Java is easy

Explanation: Split.

Easy 17: IndexOf

Problem: Easy 17: IndexOf


[Link]("Java".indexOf('a'));

Output: 1

Explanation: Index.

Easy 18: LastIndexOf

Problem: Easy 18: LastIndexOf


[Link]("Java".lastIndexOf('a'));

Output: 3

Explanation: Last index.

Easy 19: Equals

Problem: Easy 19: Equals


[Link]("Java".equals("Java"));

Output: true

Explanation: Content compare.

Easy 20: EqualsIgnoreCase

Problem: Easy 20: EqualsIgnoreCase


[Link]("java".equalsIgnoreCase("JAVA"));
Output: true

Explanation: Ignore case.

Medium 21: Remove duplicates

Problem: Medium 21: Remove duplicates


String s="programming",r="";
for(char c:[Link]())
if([Link](c)==-1) r+=c;
[Link](r);

Output: progamin

Explanation: Unique chars.

Medium 22: Frequency count

Problem: Medium 22: Frequency count


String s="aab";
int count=0;
for(char c:[Link]())
if(c=='a') count++;
[Link](count);

Output: 2

Explanation: Count char.

Medium 23: Anagram check

Problem: Medium 23: Anagram check


String a="listen",b="silent";
char[] x=[Link](),y=[Link]();
[Link](x);
[Link](y);
[Link]([Link](x,y));

Output: true

Explanation: Sort compare.

Medium 24: Reverse words

Problem: Medium 24: Reverse words


String s="Java is easy";
String[] arr=[Link](" ");
for(int i=[Link]-1;i>=0;i--)
[Link](arr[i]+" ");

Output: easy is Java


Explanation: Reverse words.

Medium 25: Count words

Problem: Medium 25: Count words


[Link]("Java is easy".split(" ").length);

Output: 3

Explanation: Word count.

Medium 26: Remove special chars

Problem: Medium 26: Remove special chars


[Link]("a@b#c!".replaceAll("[^a-zA-Z]",""));

Output: abc

Explanation: Regex.

Medium 27: Only digits?

Problem: Medium 27: Only digits?


[Link]("12345".matches("\\d+"));

Output: true

Explanation: Regex digits.

Medium 28: First non-repeating

Problem: Medium 28: First non-repeating


String s="swiss";
for(char c:[Link]()){
if([Link](c)==[Link](c)){
[Link](c); break;
}}

Output: w

Explanation: Unique char.

Medium 29: String rotation

Problem: Medium 29: String rotation


String s1="abc",s2="cab";
[Link]((s1+s1).contains(s2));

Output: true
Explanation: Rotation check.

Medium 30: Count uppercase

Problem: Medium 30: Count uppercase


int c=0;
for(char ch:"AbC".toCharArray())
if([Link](ch)) c++;
[Link](c);

Output: 2

Explanation: Uppercase count.

Medium 31: Count lowercase

Problem: Medium 31: Count lowercase


...

Output: ...

Explanation: ...

Medium 32: Remove vowels

Problem: Medium 32: Remove vowels


...

Output: ...

Explanation: ...

Medium 33: Swap words

Problem: Medium 33: Swap words


...

Output: ...

Explanation: ...

Medium 34: Longest word

Problem: Medium 34: Longest word


...

Output: ...

Explanation: ...
Medium 35: Count digits

Problem: Medium 35: Count digits


...

Output: ...

Explanation: ...

Medium 36: Reverse using StringBuilder

Problem: Medium 36: Reverse using StringBuilder


...

Output: ...

Explanation: ...

Medium 37: Check substring

Problem: Medium 37: Check substring


...

Output: ...

Explanation: ...

Medium 38: Replace words

Problem: Medium 38: Replace words


...

Output: ...

Explanation: ...

Medium 39: Count spaces

Problem: Medium 39: Count spaces


...

Output: ...

Explanation: ...

Medium 40: Remove duplicate words


Problem: Medium 40: Remove duplicate words
...

Output: ...

Explanation: ...

Hard 41: Longest substring without repeat

Problem: Hard 41: Longest substring without repeat


...

Output: ...

Explanation: Sliding window.

Hard 42: String compression

Problem: Hard 42: String compression


...

Output: ...

Explanation: Compression.

Hard 43: Minimum window substring

Problem: Hard 43: Minimum window substring


...

Output: ...

Explanation: Advanced.

Hard 44: K distinct chars

Problem: Hard 44: K distinct chars


...

Output: ...

Explanation: Window.

Hard 45: Group anagrams

Problem: Hard 45: Group anagrams


...
Output: ...

Explanation: HashMap.

Hard 46: Valid palindrome (ignore)

Problem: Hard 46: Valid palindrome (ignore)


...

Output: ...

Explanation: Clean + check.

Hard 47: String permutations

Problem: Hard 47: String permutations


...

Output: ...

Explanation: Backtracking.

Hard 48: Longest palindromic substring

Problem: Hard 48: Longest palindromic substring


...

Output: ...

Explanation: Expand center.

Hard 49: Multiply strings

Problem: Hard 49: Multiply strings


...

Output: ...

Explanation: Math logic.

Hard 50: Decode string

Problem: Hard 50: Decode string


...

Output: ...
Explanation: Stack.

You might also like