单链表反转

    /*
        题目描述:单链表反转
    */
    
    /*
        定义节点类
    */
    public class Node{
        int val;
        Node next;
        public Node(int val,Node next){
            this.val=val;
            this.next=next;
        }
    }
    
    /*
        反转思路(迭代法):
            0)定义now当前节点;
            1)定义pre前一个节点;
            2)定义next后一个节点;
            3)now指针由next指向pre;
            4)pre向后移动;
            5)now向后移动;
    */
    
    public Node reverse(Node node){
        Node pre=null;
        Node now=node;
        while(now!=null){
            Node next=now.next;
            now.next=pre;
            pre=now;
            now=next;
        }
        return pre;
    }

 

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页