给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n, 反转该链表后, 返回新链表的表头。
题目理解:单链表、反转、返回新表头
解题思路:
- 链表操作问题:
- 操作工具:链表节点指针
- 操作方法:顺序遍历
- 反转策略:
- 工具:三个指针 pre,cur,temp, 分别指向前一个、当前、下一个节点
cur = head; pre = None #初始化为空,相当于占位
- 遍历:while(cur != None)
- 反转:
tmp = cur.next
cur.next = pre
pre = cur
cur = temp
- 返回值:pre指针