给你单链表的头节点 head ,请你反转链表,并返回反转后的链表
    示例 1:
    image.png

    1. 输入:head = [1,2,3,4,5]
    2. 输出:[5,4,3,2,1]

    示例 2:
    image.png

    1. 输入:head = [1,2]
    2. 输出:[2,1]

    示例 3:

    1. 输入:head = []
    2. 输出:[]

    提示:
    链表中节点的数目范围是 [0, 5000]
    -5000 <= Node.val <= 5000
    进阶:链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?

    解答:

    1. class Solution {
    2. public ListNode reverseList(ListNode head) {
    3. ListNode last = null; //
    4. while (head!=null) {
    5. ListNode tmpNode = head.next;
    6. head.next = last;
    7. last = head;
    8. head = tmpNode;
    9. }
    10. return last;
    11. }
    12. }

    image.png