给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n, 反转该链表后, 返回新链表的表头。

题目理解:单链表、反转、返回新表头

解题思路:

  1. 链表操作问题:
  • 操作工具:链表节点指针
  • 操作方法:顺序遍历
  1. 反转策略:
  • 工具:三个指针 pre,cur,temp, 分别指向前一个、当前、下一个节点
cur = head; pre = None #初始化为空,相当于占位
  • 遍历:while(cur != None)
  • 反转
	tmp = cur.next
	cur.next = pre
    pre = cur
    cur = temp
  1. 返回值:pre指针