题目
请判断一个链表是否为回文链表。
示例 1:
输入: 1->2
输出: false
示例 2:
输入: 1->2->2->1
输出: true
解答
将链表中的各值存在数组中,再判断是否是回文。
var isPalindrome = function(head) {
var arr = [];
while(head != null){
arr.push(head.val);
head = head.next;
}
// 当arr的长度大于1时,判断前后是否相同
while(arr.length > 1) {
if(arr.pop() != arr.shift() ){
return false;
}
}
// 当arr的长度为1,或者长度大于1并且为回文时,返回true
return true;
};