您的位置:首页 > Web前端

剑指offer(3):从尾到头打印链表

2017-08-22 17:03 405 查看

剑指offer(3):从尾到头打印链表

输入一个链表,从尾到头打印链表每个节点的值。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Created by xuehz on 2017/8/22

"""
题目描述
输入一个链表,从尾到头打印链表每个节点的值。
"""

class ListNode:
def __init__(self, x):
self.val = x
self.next = None

class Solution:
# 返回从尾部到头部的列表值序列,例如[1,2,3]
def printListFromTailToHead(self, listNode):
# write code here
l = []  # 定义一个栈 #先进后出
if listNode is None:
return l

head = listNode

while head:
l.insert(0, head.val) # l = [listNode.val]+l
head = head.next
return l

def printListFromTailToHead1(self, listNode):
l = []
if listNode is None:
return l

while listNode is not None:
l.append(listNode.val)
listNode = listNode.next
l.reverse() #l[::-1]
return l

if __name__ == '__main__':
node1 = ListNode(10)
node2 = ListNode(11)
node3 = ListNode(13)

node1.next = node2
node2.next = node3

S = Solution()

print(S.printListFromTailToHead2(node1))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: