剑指offer第三题 牛客网在线编程链接 https://www.nowcoder.com/activity/oj
从尾到头打印链表
题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
思路
从头到尾遍历链表,并用一个栈stack存储每个结点的值,之后将栈中的值反转。
Python2.7编写
# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
def printListFromTailToHead(self,listNode):
p = listNode #用指针p指向链表的首节点
stack = [] #用栈stack记录链表每个节点保存的值
while p != None:
stack.append(p.val)
p = p.next
return stack[::-1] #将栈中的值反转