# 原题

请判断一个链表是否为回文链表。

示例 1:

输入: 1->2
输出: false
示例 2:

输入: 1->2->2->1
输出: true
进阶:
你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?

# 解 :

var isPalindrome = function (head) {
    let arr = []
    while (head) {
        arr.push(head.val)
        head = head.next
    }
    //判断回文,即左右相等,所以可以只遍历一半
    for (let i = 0; i < arr.length / 2; i++) {//首尾是否相等
        if (arr[i] !== arr[arr.length - 1 - i]) {
            return false
        }
    }
    return true
};
Last Updated: 4/3/2020, 6:21:54 PM