算法-链表反转

2020-04-23  本文已影响0人  砂壶

leecode 206链表反转:
https://leetcode-cn.com/problems/reverse-linked-list/

思路:

  1. 记录节点node,初始化为链表的头节点
  2. 记录每个节点的上一个节点记pre, 第一个节点反转后的next应该为null,故初始化为null
  3. 对node作循环,保存下个节点tempNext,将当前节点的next置为pre,而后pre更新为当前节点node,最后将node置为tempNext继续下一轮循环。
var reverseList = function(head) {
    let node = head;
    let pre = null;
    while(node) {
        let tempNext = node.next;
        node.next = pre;
        pre = node;
        node = tempNext;
    }
    return pre;
};
上一篇 下一篇

猜你喜欢

热点阅读