塞进裤子ヾ(≧O≦)〃嗷~

0%

从尾到头打印链表

最初思路:将每个节点的值保存到一个list中,返回list[::-1]

书上的思路:

method1:先进后出,用栈实现。

method2:递归

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
class ListNode:
def __init__(self, x):
self.val = x
self.next = None

class Solution:
def printListFromTailToHead(self, listNode)#最初思路
# listNode是头结点
myarrary = []
while listNode != None:
myarrary.append(listNode.val)
listNode = listNode.next
return myarray[::-1]

def printListFromTailToHead(self, listNode)#栈
# listNode是头结点
myarrary = []
while listNode != None:
myarrary.append(listNode.val)
listNode = listNode.next
while myarrary:
print(myarrary.pop())

def printListFromTailToHead(self, listNode):#递归
# listNode是头结点
if listNode:
if listNode.next:
self.printListFromTailToHead(listNode.next)
print listNode.val
if help:小手一抖点个广告 or 大手一挥资助一下