A phrase is a palindrome if, after converting all uppercase letters to lowercase and removing all non-alphanumeric characters, it reads the same forward and backward. Given a string s, return true if it is a palindrome.
s = "A man, a plan, a canal: Panama"trues = "race a car"falsel = 0, r = n−1l < r: skip non-alphanumeric at l and rtoLowerCase(s[l]) vs toLowerCase(s[r]) — mismatch → falsel++, r--l ≥ r, all pairs matched → trueTwo-pointer palindrome check without building a cleaned string. Non-alphanumeric characters are skipped in-place — they never participate in comparison. Only mirror positions matter; case is normalized via lowercase. Any mismatch immediately proves the string is not a palindrome; if pointers cross, every alphanumeric char had a matching partner.