牛客网 《剑指offer》

时间限制:1秒 空间限制:32768K 热度指数:327472 本题知识点: 链表 解题思路 我们的第一反映是将链表指针反向,然后再从头到尾输出结点的值,再把指针返回来 但是,这样就改变了原来链表的结构!是否允许这样需要问清楚面试官。 通常打印是一个只读操作。 另一种思路:我们的输出是先进后出,所以可以用栈来实现,而递归是一种栈,所以也可以用递归来做。 python

-- coding:utf-8 --

class ListNode:

def init(self, x):

self.val = x

self.next = None

class Solution: # 返回从尾部到头部的列表值序列,例如[1,2,3] def printListFromTailToHead(self, listNode): # write code here if not listNode: return [] return self.printListFromTailToHead(listNode.next) + [listNode.val] 结果通过 运行时间:35ms 占用内存:5768k