diff --git a/valid-palindrome/JEONGBEOMKO.java b/valid-palindrome/JEONGBEOMKO.java new file mode 100644 index 000000000..5a2136ff9 --- /dev/null +++ b/valid-palindrome/JEONGBEOMKO.java @@ -0,0 +1,32 @@ +class Solution { + + /* + time complexity: O(n) + space complexity: O(n) + */ + + public boolean isPalindrome(String s) { + + 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 (Character.toLowerCase(s.charAt(left)) != Character.toLowerCase(s.charAt(right))) { + return false; + } + + left++; + right--; + + } + return true; + } +}