题解 | #判断一个链表是否为回文结构#
判断一个链表是否为回文结构
https://www.nowcoder.com/practice/3fed228444e740c8be66232ce8b87c2f
import java.util.*; /* * public class ListNode { * int val; * ListNode next = null; * } */ public class Solution { /** * * @param head ListNode类 the head * @return bool布尔型 */ public boolean isPail (ListNode head) { ArrayList<ListNode> list = new ArrayList<>(); while (head != null) { list.add(head); head = head.next; } int size = list.size(); if (size % 2 == 0) { int r = size / 2; int l = r - 1; while (l >= 0) { if (list.get(l).val != list.get(r).val) return false; l--; r++; } return true; } else { int r = size / 2 + 1; int l = size / 2 - 1; while (l >= 0) { if (list.get(l).val != list.get(r).val) return false; l--; r++; } return true; } } }