https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/submissions/
func reverseList(_ head: ListNode?) -> ListNode? {
if head == nil || head?.next == nil {return head}
var finallNode : ListNode? = nil
var cur = head
while cur != nil {
//將cur的下一個節(jié)點(diǎn)暫存,以便后續(xù)恢復(fù)鏈表遍歷
let tmpNode = cur?.next
//將當(dāng)前節(jié)點(diǎn)的next指向finall
cur?.next = finallNode
//將finall指向新生成的cur.next鏈表
finallNode = cur
//重新回復(fù)cur原生鏈表,繼續(xù)遍歷
cur = tmpNode
}
return finallNode
}