剑指offer(15)反转链表

Posted 3yleaves

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer(15)反转链表相关的知识,希望对你有一定的参考价值。

题目描述:

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

解题代码:

/*function ListNode(x){
    this.val = x;
    this.next = null;
}*/
function ReverseList(pHead)
{
    // write code here
    if(pHead == null || pHead.next == null){
        return pHead;
    }
    //三个指针,pre指向前一个指针,pHead为当前指针,next为下一个指针
    var pre = null;
    var next = null;
    //当前指针不为空时,一直用next指向其下一个结点,再将当前指针的next指向前一个指针完成链表的反转
    //操作完成后,用pre指向当前节点,pHead指向next指向的下一个结点。当前结点为空时,pre指向的即为反转后的链表的表头
    while(pHead != null){
        next = pHead.next;
        pHead.next = pre;
        pre = pHead;
        pHead = next;
    }
    return pre;
}

 

以上是关于剑指offer(15)反转链表的主要内容,如果未能解决你的问题,请参考以下文章

剑指Offer 15. 反转链表 (链表)

反转链表(剑指offer-15)

15剑指offer--反转链表

[剑指Offer] 15.反转链表

剑指offer---15---反转链表

剑指offer反转链表python