234. Palindrome Linked List | Leetcode solution

 234Palindrome Linked List 

Given the head of a singly linked list, return true if it is a palindrome.

 

Example 1:

Input: head = [1,2,2,1]
Output: true

Example 2:

Input: head = [1,2]
Output: false

 

Constraints:

  • The number of nodes in the list is in the range [1, 105].
  • 0 <= Node.val <= 9

 

Follow up: Could you do it in O(n) time and O(1) space?


Solution :

class Solution {

public:

    bool isPalindrome(ListNode* head) {

            string s = "";

           ListNode * temp = head;

        while(temp != NULL)

        {

           s += ((temp->val) + 48) ;

           temp = temp->next;

            

        }

        

        for(int i = 0 ; i <= s.size()/2 ; i++ )

        {

            if(s[i] != s[s.size()-1-i])

                return false;

          

        }

        return true;

    }

};


Reference : https://leetcode.com/problems/palindrome-linked-list/


Comments