【每日一題】LeetCode206 Reverse Linked List
Difficulty: easy? ? CompletionTime: 6min37s

Given the?head
?of a singly linked list, reverse the list, and return?the reversed list.

數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)題,題目提示迭代和遞歸兩種方法,遞歸會(huì)比迭代難理解一些。關(guān)于鏈表,把圖畫出來(lái)思路就清晰了。
1.雙指針迭代

定義一前一后兩個(gè)指針,每次操作使前指針指向后指針并同時(shí)向前移動(dòng)直到鏈表尾。
2.遞歸

遞歸到鏈表尾,該結(jié)點(diǎn)作為頭結(jié)點(diǎn),逐層返回。返回時(shí)讓當(dāng)前節(jié)點(diǎn)下一個(gè)節(jié)點(diǎn)的next指向當(dāng)前節(jié)點(diǎn),當(dāng)前節(jié)點(diǎn)的next指向NULL直到遞歸結(jié)束。
標(biāo)簽: