• 【剑指offer】15 反转链表


    题目地址:反转链表

    题目描述                                   

    输入一个链表,反转链表后,输出新链表的表头。
       

    题目示例                                   

    输入:
    {1,2,3}
    返回值:
    {3,2,1}

    解法分析                                   

    反转链表可以考虑使用两个结点pre和next分别记录当前节点的前一个节点和后一个结点。

    当前节点不为空时,进入循环,先记录当前节点的下一个节点next的位置,再让当前节点的指针指向pre。之后结点右移,直到当前节点为空跳出循环,返回pre即可。

     

    代码                                         

     1 function ReverseList(pHead)
     2 {
     3     // write code here
     4     if(pHead == null || pHead.next == null){
     5         return pHead;
     6     }
     7     var pre = null;
     8     var next = null;
     9     while(pHead != null){
    10         next = pHead.next;
    11         pHead.next = pre;
    12         pre = pHead;
    13         pHead = next;
    14     }
    15     return pre;
    16 }

    执行结果                                   

  • 相关阅读:
    H5 WebSocket
    JS call()、apply()、bind()
    JS中this指向问题
    JS GET POST请求
    php 常用get post http请求
    php 开启redis
    egret接入华为快应用6004
    PHP生成公私钥,签名和验签
    JS数组去重
    Oracle第九课
  • 原文地址:https://www.cnblogs.com/sunlinan/p/14274345.html
Copyright © 2020-2023  润新知