剑指offer_反转链表

136 阅读1分钟

题目描述

定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。

反转时候要更新到下一个点,提前开一个变量记录即可

Code

/**
 * Definition for singly-linked list.
 * function ListNode(val) {
 *     this.val = val;
 *     this.next = null;
 * }
 */
/**
 * @param {ListNode} head
 * @return {ListNode}
 */
var reverseList = function(head) {
    if(!head || !head.next) return head;
    let a = head;
    let b = head.next;
    while(b){
        let c = b.next;
        b.next = a;
        a = b;
        b = c;
    }
    head.next = null;
    return a;
    
};