题解 | #判断一个链表是否为回文结构#
判断一个链表是否为回文结构
http://www.nowcoder.com/practice/3fed228444e740c8be66232ce8b87c2f
- 第一次遍历将节点值放到stack里面
- 第二次遍历每次拿到该节点的值与stack弹出来的值比较,不同返回false,比较完成返回true;
public boolean isPail (ListNode head) {
//第一次遍历取值
Stack<Integer> stack = new Stack();
ListNode temp = head;
while(temp!=null){
stack.push(temp.val);
temp = temp.next;
}
//第二次遍历比较
while(head!=null){
Integer cur = stack.pop();
if( head.val != cur ){
return false;
}
head = head.next;
}
return true;
}

