206. 反转链表 Java初学者版

文章目录


给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

在这里插入图片描述


三指针

在这里插入图片描述

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    
    
    public ListNode reverseList(ListNode head) {
    
    


        ListNode left=head;
        ListNode right=null;
        if(left!=null){
    
    
            right=head.next;
        }else{
    
    
            right=null;
        }
        ListNode end=null;
        while(left!=null){
    
    
            //更改链接方向
            left.next=end;
            //全指针右移
            end=left;
            left=right;
            if(right!=null)
            right=right.next;
        }


        return end;

    }
}

猜你喜欢

转载自blog.csdn.net/qq_44627608/article/details/123542424