Two pointers & sliding windowLeetCode 125

Lesson 32 of 76

Valid Palindrome

Decide whether a string is a palindrome after ignoring case and non-alphanumeric characters.

Watch on YouTube

Lesson notes

Try it before you watch

Restate the problem in your own words, list the edge cases, and sketch a solution with its running time. Then play the video and compare.

Reveal the key idea

Move two pointers inwards from both ends, skipping characters that are not letters or digits and comparing the rest case-insensitively.

Pattern: Two pointers & sliding window. Move two indices through a sequence so each element is visited a constant number of times.

Complexity

Cost of the standard optimal approach for Valid Palindrome
Measure Bound
Time O(n)
Extra space O(1)

Walkthroughs often start from a simpler approach first; aim to reach these bounds. New to Big-O? Read understanding algorithmic complexity.