题解 | #反转链表#

反转链表

http://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca


/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode ReverseList(ListNode head) {
        
        if(head == null){
            return head;
        }
        
        ListNode p = head;
        ListNode t = p.next;
        while(t != null){
            p.next = t.next;
            t.next = head;
            head = t;
            t = p.next;
        }
        
        return head;
    }
}

alt

  1. 把头节点当成逆置后的尾节点
  2. 每次都让A的next指向A下一个的下一个
  3. A的下一个作为新的头节点
  4. 直到A的下一个为NULL结束
全部评论

相关推荐

自由水:笑死了,敢这么面试不敢让别人说
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务