美文网首页
java算法链表反转

java算法链表反转

作者: Bfmall | 来源:发表于2022-01-18 17:41 被阅读0次

    遍历法:
    遍历法就是在链表遍历的过程中将指针顺序置换


    image.png

    代码实现:

    public static Node reverseList(Node node) {
        Node pre = null;
        Node next = null;
        while (node != null) {
            next = node.next;
            node.next = pre;
            pre = node;
            node = next;
        }
        return pre;
    }
    

    依旧是1->2->3->4

    准备两个空结点 pre用来保存先前结点、next用来做临时变量
    在头结点node遍历的时候此时为1结点
    next = 1结点.next(2结点)
    1结点.next=pre(null)
    pre = 1结点
    node = 2结点
    进行下一次循环node=2结点
    next = 2结点.next(3结点)
    2结点.next=pre(1结点)=>即完成2->1
    pre = 2结点
    node = 3结点
    进行循环...

    相关文章

      网友评论

          本文标题:java算法链表反转

          本文链接:https://www.haomeiwen.com/subject/vtokhrtx.html