题解 | #链表的回文结构#
链表的回文结构
https://www.nowcoder.com/practice/d281619e4b3e4a60a2cc66ea32855bfa
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 fast = head; ListNode slow = head; while(fast != null && fast.next != null){ fast = fast.next.next; slow = slow.next; } ListNode cur = slow; while(cur != null){ ListNode curN = cur.next; cur.next = slow; slow = cur; cur = curN; } while(head != slow){ if(head.val == slow.val){ head = head.next; slow = slow.next; } else { return false; } if(head.next == slow){ return true; } } return true; } }