【剑指offer】---从尾到头打印链表

输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。

1.利用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
        nodes = []
        while listNode:
            nodes.append(listNode.val)
            listNode = listNode.next
        return nodes[::-1]

2.递归法

# -*- 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
        list = []
        if listNode:
            list = self.printListFromTailToHead(listNode.next)
            list.append(listNode.val)
        return list
发布了33 篇原创文章 · 获赞 0 · 访问量 918

猜你喜欢

转载自blog.csdn.net/nickyff/article/details/104878863
今日推荐