import java.util.*; /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class PalindromeList { public boolean chkPalindrome(ListNode head) { // write code here ListNode slow=head; ListNode fast=head; if(head==null){ return false; } while(fast!=null&&fast.next!=null){ fast=fast.next.next; slow=slow.next; } ListNode curN=slow.next; while(curN!=null){ ListNode tmp=curN.next; curN.next=slow; slow=curN; curN=tmp; } curN=head; while(curN!=slow){ if(curN.val!=slow.val){ return false; } if(curN.next==slow){ return true; } curN=curN.next; slow=slow.next; } return true; } }