题解 | #反转链表#

反转链表

https://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;
        }
	  //如果不为空 保存链表结构{1,2,3} 获取前驱节点
        ListNode pre=head;
	  //获取链表的当前前驱节点的指针后续节点{2,3}
        ListNode current=head.next;
	  //真正获取前驱节点{1}
        pre.next=null;
	//循环判断后续节点是否为空
	  while(current!=null){
		/*
		first:
		next=current.next--->{3}
		current.next=pre;--->pre={1}--->执行完为:current={2,1} 因为将当前节点2的指针指向1
		pre=currnt;--->{2,1}
		current=next;-->{3}
		
		second:
		next=current.next;---->null
		current.next=pre;----->pre={2,1}----->执行完为:current={3,2,1}
		per=current;----->{3,2,1}
		current=next;---->null
		*/
		ListNode next=current.next;
  			current.next=pre;
  			pre=current;
  			current=next; 
	} 
	  return pre;
}
    
}

全部评论

相关推荐

链接
海梨花:我说话难听,你这简历跟没写没啥区别,搜搜别人的简历,用心写,不要随随便便就结束了
点赞 评论 收藏
分享
12-19 22:04
武汉大学 Java
点赞 评论 收藏
分享
12-15 14:16
门头沟学院 Java
回家当保安:发offer的时候会背调学信网,最好不要这样。 “27届 ”和“28届以下 ”公司招聘的预期是不一样的。
实习简历求拷打
点赞 评论 收藏
分享
zzzilik:四个月实习做了3个项目不觉得很假吗,真没必要写这么多吧我感觉挑点核心的重点写一下我感觉会好点
你的简历改到第几版了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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