题目: 思路: 快慢指针找到中点根据中点进行反转反转后对比是否相同 代码: public class PalindromeLinkedList_Code_234 { public class ListNode{ public int val; public ListNode next; public ListNode(int x){val = x;} } public boolean isPalindrome(ListNode head) { if(head==null||head.next==null)return true; ListNode fast = head,slow=head,pre=null; while (fast!=null&&fast.next!=null){ slow=slow.next; fast=fast.next.next; } while (slow!=null){ ListNode p = slow.next; slow.next = pre; pre = slow; slow = p; } while (head!=null&&pre!=null){ if(head.val!=pre.val)return false; head = head.next; pre = pre.next; } return true; } }