劍指offer(15)反轉鏈表
阿新 • • 發佈:2018-09-06
-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)反轉鏈表