leetCode206 - 反转单链表

leetCode206题,反转单链表习题解答

package LinkList;

/**
 * @Auther: DarkKing
 * @Date: 2019/7/22 21:20
 * @Description:
 */
public class LeetCode206 {

    static class Solution {
        public static ListNode reverseList(ListNode head) {
            ListNode cur = head;
            ListNode pre = null;
            ListNode next;
            while (cur != null) {
                //获取当前节点的下一个节点
                    next = cur.next;
                    //设置当前节点的前置节点
                    cur.next = pre;
                    //将当前节点设置为前置节点
                    pre = cur;
                    //将下一个节点设置为当前节点,继续循环。
                    cur = next;
            }
            return pre;
        }
    }

    public static class ListNode {
        int val;
        ListNode next;

        ListNode(int x) {
            val = x;
        }
    }

    public static void main(String[] args) {
        ListNode list= new ListNode(1);
        list.next=new ListNode(2);
        list.next.next=new ListNode(3);
        list.next.next.next=new ListNode(4);
        ListNode list2 = Solution.reverseList(list);
        System.out.println(list2.toString());
    }
}
发布了38 篇原创文章 · 获赞 80 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/b379685397/article/details/96906322