单向链表反转,需要注意在修改下一个节点指向时,不能破坏原有链表,于是比较直接的思路,就是通过3个指针来顺序记录连续节点的位置,确保:

  1. 当前节点p2指向head
  2. 在修改新的链接顺序时,记录原有链表的原始下一个节点位置,通过head指针来维护
  3. 将当前节点的下一个节点位置修改为上一个节点p1
  4. 将当前节点的上一个节点指针p1移到当前节点为下一步操作做准备