Skip to content

eMahtab/valid-palindrome

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

Valid Palindrome

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.

Note: For the purpose of this problem, we define empty string as valid palindrome.

Example 1:

Input: "A man, a plan, a canal: Panama"
Output: true
Example 2:

Input: "race a car"
Output: false

Implementation :

class Solution {
    public boolean isPalindrome(String s) {
       if(s == null)
           return false;
       int left = 0;
       int right = s.length()-1;
       while(left < right){
           while(left < right && !Character.isLetterOrDigit(s.charAt(left)))
               left++;
           while(left < right && !Character.isLetterOrDigit(s.charAt(right)))
               right--;
           if(left < right && Character.toLowerCase(s.charAt(left++)) != Character.toLowerCase(s.charAt(right--))) 
              return false; 
       }
       return true; 
    }
}

References :

https://www.youtube.com/watch?v=3RQ5ADUKHsY

Releases

No releases published

Packages

No packages published