剑指offer 06. 从尾到头打印链表
问题链接
https://leetcode.cn/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/description/
解题思路
首先看参数和返回值。参数为一个链表的头节点。返回值为一个逆序好的数组。
然后看本层做什么,以及怎么缩小规模。
本层要做的事情就是将下一层返回过来的数组拿到,然后把本层的值append进去,然后把这个组合后的数组返回回去。
缩小规模就是把下一个节点当作头节点传递给递归函数。
然后看递归出口。当head为None时,应当返回一个空数组。
代码
class ListNode: def __init__(self, x): self.val = x self.next = None class Solution: def reversePrint(self, head: ListNode): if head is None: return [] else: res = self.reversePrint(head.next) res.append(head.val) return res
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)