题解 | #反转链表#

反转链表

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

class Solution:
    def ReverseList(selfhead: ListNode) -> ListNode:
        # write code here
        if head is None or head.next is None:
            return head
        new_head = None
        cur = head
        while cur != None:
            tmp = cur.next
            cur.next = new_head
            new_head = cur
            cur = tmp
        return new_head

解题思路记录:
1. 首先判断空链表或只有1个值的链表
2. 声明一个new链表 new_head初始化为None,声明一个cur初始化为head用于节点的移动
3. 使用tmp保存下一个节点的地址;
4. 当前节点的下一个节点指向新的链表(None为尾结点);
5.再将新链表的头节点指向当前节点,原链表的第一个节点实现翻转;
6.将当前节点指向原节点的下一个节点,重复上述步骤,实现所有节点的翻转。
#数据结构编程链表#
全部评论

相关推荐

11-24 00:11
已编辑
广东工业大学 算法工程师
避雷深圳  yidao,试用期 6 个月。好嘛,试用期还没结束,就直接告诉你尽快找下一家吧,我谢谢您嘞
牛客75408465号:笑死,直属领导和 hr 口径都没统一,各自说了一些离谱的被裁理由,你们能不能认真一点呀,哈哈哈哈哈😅😅😅
点赞 评论 收藏
分享
球球别再泡了:坏,我单9要了14
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务