单向链表的反转

 public Node reverse(Node head) {

        Node pre = null;
        Node next = null;

        while (head != null) {
            next = head.next;
            head.next = pre;//反转,指针方向发生变化
            pre = head;//记录前一个节点
            head = next;//循环,最后一个为空,退出循环

        }

        return pre; //返回反转后的新头部节点

    }

    class Node {

        int value;
        Node next;

        public Node(int value) {
            this.value = value;
        }


    }



版权声明:本文为xiaohanguo_xiao原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。