zoukankan      html  css  js  c++  java
  • 206、反转链表 | JS

    给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。
     

    示例 1:


    输入:head = [1,2,3,4,5]
    输出:[5,4,3,2,1]
    示例 2:

    输入:head = [1,2]
    输出:[2,1]
    示例 3:

    输入:head = []
    输出:[]
     

    提示:

    链表中节点的数目范围是 [0, 5000]
    -5000 <= Node.val <= 5000

    题解:

    双指针遍历,逐个反转。

     1 /**
     2  * Definition for singly-linked list.
     3  * function ListNode(val, next) {
     4  *     this.val = (val===undefined ? 0 : val)
     5  *     this.next = (next===undefined ? null : next)
     6  * }
     7  */
     8 /**
     9  * @param {ListNode} head
    10  * @return {ListNode}
    11  */
    12 var reverseList = function(head) {
    13     let p1 = head;
    14     let p2 = null;
    15     while(p1){
    16         const tmp = p1.next;
    17         p1.next = p2;
    18         p2 = p1;
    19         p1 = tmp;
    20     }
    21     return p2;
    22 };
  • 相关阅读:
    18周个人总结
    十六周个人总结
    排球积分规则程序
    十四周软件工程总结
    本周总结
    排球积分规则
    我的计算机生涯
    排球比赛记分员
    《怎样成为一个高手》观后感
    冲刺作业
  • 原文地址:https://www.cnblogs.com/oaoa/p/14679356.html
Copyright © 2011-2022 走看看