24: 单链表反转

反转链表,输出反转后的链表头节点

基本思路是依次改变指针指向,注意只有头结点的处理,以及遇到尾节点的处理。

public static Node reverse(Node head) {
    if (head == null)
        return null;

    Node curr = head;
    Node pre = null;
    Node next = null;
    while (curr != null) {
        next = curr.next;
        curr.next = pre;
        pre = curr;
        curr = next;
    }

    return pre;
}

猜你喜欢

转载自blog.csdn.net/weixin_41889284/article/details/89481532