Given a string str, the task is to find whether the string is a palindrome or not in Java without using library methods.
Examples:
Input: str = “abba”
Output: YesInput: str = “geeks”
Output: No
Approach: Take two pointers i pointing to the start of the string and j pointing to the end of the string. Keep incrementing i and decrementing j while i < j and at every step check whether the characters at these pointers are same or not. If not then the string is not a palindrome else it is.
Below is the implementation of the above approach:
Java
// Java implementation of the approach public class GFG { // Function that returns true if // str is a palindrome static boolean isPalindrome(String str) { // Pointers pointing to the beginning // and the end of the string int i = 0 , j = str.length() - 1 ; // While there are characters to compare while (i < j) { // If there is a mismatch if (str.charAt(i) != str.charAt(j)) return false ; // Increment first pointer and // decrement the other i++; j--; } // Given string is a palindrome return true ; } // Driver code public static void main(String[] args) { String str = "geeks" ; if (isPalindrome(str)) System.out.print( "Yes" ); else System.out.print( "No" ); } } |
No
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.