题解 | #判断一个链表是否为回文结构#
判断一个链表是否为回文结构
https://www.nowcoder.com/practice/3fed228444e740c8be66232ce8b87c2f
import java.util.*;
public class Solution {
public boolean isPail (ListNode head) {
if (head == null || head.next == null)
return true;
ListNode ln = rever(head);
while(head != null) {
if (head.val != ln.val)
return false;
head = head.next;
ln = ln.next;
}
return true;
}
public ListNode rever(ListNode ln) {
ListNode result = new ListNode(1);
ListNode curr = result;
List<Integer> arr = new ArrayList<>();
while(ln != null) {
arr.add(ln.val);
ln = ln.next;
}
for (int i = arr.size() - 1; i >= 0; i--){
curr.next = new ListNode(arr.get(i));
curr = curr.next;
}
return result.next;
}
}
查看15道真题和解析