/*
* public class ListNode {
* int val;
* ListNode next = null;
* }
*/
public class Solution {
/**
*
* @param head ListNode类 the head
* @return bool布尔型
*/
public boolean isPail (ListNode head) {
if(head==null) return true;
// write code here
//反转链表数据进栈
Stack<Integer> st =new Stack<>();
st=reverse(head);
ListNode temp=head;
while(temp!=null){
int num=st.pop();
if(temp.val!=num){
return false;
}
temp=temp.next;
}
return true;
}
public Stack<Integer> reverse(ListNode head){
Stack<Integer> st = new Stack<Integer>();
ListNode tempNode=head;
while(tempNode!=null){
st.push(tempNode.val);
tempNode=tempNode.next;
}
return st;
}
}