题解 | #反转链表#

翻转链表过程

链表特点是头结点和尾节点相连,增删快,查找慢

本次编写是借鉴他人成果,然后进行知识梳理

  1. 头结点为空,直接返回
  2. 头结点不为空时,持续遍历
  3. 当头结点不是最后一个元素时候,进行链表元素交换(当前节点下一个节点不为空)
  4. 返回头结点

解答

https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=190&&tqId=35203&rp=1&ru=/activity/oj&qru=/ta/job-code-high-rd/question-ranking

public class Solution {
    public ListNode ReverseList(ListNode head) {
        if(head == null)
            return null;
        ListNode resverseHead = null;
        ListNode tmp = null;
        ListNode pre = null;
        while(head!=null){
            tmp = head.next;
             head.next = pre;
            if(tmp==null)
            resverseHead = head;
            pre = head;
            head = tmp;

        }
        return resverseHead;
    }
}
全部评论

相关推荐

点赞 评论 收藏
分享
10-11 17:30
湖南大学 C++
我已成为0offer的糕手:羡慕
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务