Easy
Valid Palindrome
Easy
0 submissions
10 coins
+50 XP
String
Two Pointers
Problem Description
A phrase is a **palindrome** if, after converting all uppercase letters into lowercase letters and removing all non-alphanumeric characters, it reads the same forward and backward. Alphanumeric characters include letters and numbers.
Given a string `s`, return `true` if it is a **palindrome**, or `false` otherwise.
**Example 1:**
```
Input: s = "A man, a plan, a canal: Panama"
Output: True
Explanation: "amanaplanacanalpanama" is a palindrome.
```
**Example 2:**
```
Input: s = "race a car"
Output: False
Explanation: "raceacar" is not a palindrome.
```
**Example 3:**
```
Input: s = " "
Output: True
Explanation: s is an empty string "" after removing non-alphanumeric characters.
Since an empty string reads the same forward and backward, it is a palindrome.
```
Constraints
- `1 <= s.length <= 2 * 10^5`
- `s` consists only of printable ASCII characters.
Need help?
Connect with expert programmers for real-time collaborative coding, video meetings, and whiteboard sessions via CodeConnect.
Video Call
Whiteboard
Live Coding
Screen Share