Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
Palindrome Checking
00:00
5 left

Palindrome Checking

EasyPython

Problem

Chevron systems may receive short text labels or inspection codes that need basic structural validation. Given a string, determine whether it reads identically forward and backward after ignoring letter case and all non-alphanumeric characters.

Formal Specification

Implement is_palindrome(s), where s is a string. Return True if the normalized string is a palindrome, otherwise return False.

Normalization means:

  1. Convert uppercase English letters to lowercase.
  2. Keep only characters from a-z and 0-9.
  3. Ignore spaces, punctuation, and other characters.

Use a two-pointer approach that compares characters from both ends. Do not create a second normalized string.

Constraints

  • 1 <= len(s) <= 2 * 10^5
  • s contains printable ASCII characters
  • Only English letters and digits are considered alphanumeric
  • Comparison is case-insensitive

Function Signature

def is_palindrome(s):
Interviewer

Your question is Palindrome Checking. Start with the requirements in the Question tab.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.
CodePython 3
You need to log in / sign up to run or submit.Ln 2
Run your code to see test output here.