题解 | #反转链表#

反转链表

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

反转链表这道题比较简单,可以把链表拆开来看,一个链一个链的进行操作,使用迭代的方法,这样就可以通过while循环来解决问题。

public static ListNode renus(LitNode head){
    //首先解决第一个节点的问题,定义当前节点,
        //当前节点的前一个节点和当前节点的下一个节点
    ListNode pre = null;
    ListNode cur = head;
    ListNode next  = null;
    //当确定每个节点的初始值的时候开始迭代
    while(cur!=null){
        next = cur.next;   //首先取得当前节点的下一个节点
        cur.next = pre;   //之后将当前节点的next指向上一个节点
        pre = cur;      // 将前一个节点设置为当前节点
        cur = next;     //将下一个节点设置为当前节点
     }
    return pre;
}
全部评论

相关推荐

05-26 09:07
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-20 14:01
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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