Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
Palindrome Linked List Coding
00:00
5 left

Palindrome Linked List Coding

EasyPython

Problem

NASA Jet Propulsion Laboratory telemetry pipelines may represent an ordered sequence of readings as a singly linked list. Given the head of such a list, determine whether the sequence reads identically from left to right and right to left.

Return True if the list is a palindrome and False otherwise. Your solution should run in linear time and use constant auxiliary space. You may temporarily modify the list, but restore its original structure before returning.

Formal Specification

Implement is_palindrome(head), where head is either None or a ListNode. Each node has an integer val field and a next field containing the next node or None. The function returns a Boolean.

For the test cases below, the input array lists node values from head to tail. The test harness constructs the corresponding linked list before calling the function.

Constraints

  • 0 <= n <= 10^5
  • -10^9 <= node.val <= 10^9
  • The list contains no cycles
  • The function should use O(1) auxiliary space

Function Signature

def is_palindrome(head):
Interviewer

Your question is Palindrome Linked List Coding. 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.