1. 程式人生 > >劍指offer(15)反轉鏈表

劍指offer(15)反轉鏈表

-i node size bject tno subject ont code title

題目描述:

輸入一個鏈表,反轉鏈表後,輸出新鏈表的表頭。

解題代碼:

/*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)反轉鏈表