Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Palindrome Check Without Reverse

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Palindrome Check Without Reverse. Start with the requirements on the right.

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.

Problem

An ING mobile banking workflow receives reference strings that may need a basic format check. Implement a function that determines whether the given string is a palindrome without using built-in reverse operations such as reversed(), str.reverse(), or slicing with [::-1].

A palindrome reads identically from left to right and right to left. Treat uppercase and lowercase characters as different, and treat spaces and punctuation as ordinary characters. The function must return True when the complete string is a palindrome and False otherwise.

Formal Specification

Implement is_palindrome(s).

  • Input: s, a string containing zero or more characters.
  • Output: A Boolean value indicating whether s is a palindrome.
  • You may use len() and character indexing, but you must not construct a reversed copy of the string or call a built-in reverse method.

Constraints

  • 0 <= len(s) <= 10^5
  • The string may contain Unicode characters
  • Matching is case-sensitive
  • Whitespace and punctuation are significant
  • Do not use built-in reverse operations
  • Use O(1) auxiliary space

Function Signature

def is_palindrome(s):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output