js版 劍指offer 9 翻轉鍊錶

2021-09-11 23:59:06 字數 418 閱讀 3803

輸入乙個鍊錶,反轉鍊錶後,輸出新鍊錶的表頭。

1->2->3->4->5,遍歷鍊錶,把1的next置為null,2的next置為1,以此類推,5的next置為4。得到反轉鍊錶。需要考慮鍊錶只有1個元素的情況。圖中有具體的每步迭代的思路,最後輸出pre而不是phead是因為最後一次迭代後phead已經指向null了,而pre是完整的反向鍊錶。

/*function listnode(x)*/

function reverselist(phead)

let pre = null,next = null;

while(phead !== null)

return pre;

}

劍指Offer 翻轉鍊錶

題目 寫出乙個函式,給定乙個鍊錶的頭節點,反轉該鍊錶並輸出其頭節點 struct node linklist 對於煉表頭和鍊錶尾,也有多種定義方式。比如 linklist list int value list value 第乙個元素 node secondnode list next 下乙個節點 ...

劍指Offer 9 跳台階

題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 劍指offer思路 首先我們考慮最簡單的情況。如果只有1級台階,那麼顯然只一種跳法。如果有2級台階,那就有兩種跳法 一種是分兩次跳,每次跳1級 另一種是一次跳2級。接著,我們...

6 劍指offer 翻轉鍊錶

class solution 如果head為null的時候,pre就為最後乙個節點了,但是鍊錶已經反轉完畢,pre就是反轉後鍊錶的第乙個節點 直接輸出pre就是我們想要得到的反轉後的鍊錶 return pre 第二種方法是 遞迴方法 struct listnode class solution 2 ...