面接問題6:最初から最後までチェーンテーブルを印刷する
665 ワード
タイトルの説明:
チェーンテーブルを入力し、チェーンテーブルの各ノードの値を末尾から印刷します.
問題解決の考え方:
チェーンテーブルを巡回し、1つのスタックに格納し、スタックの先進的な後出の原則に基づいて、末尾からチェーンテーブルを印刷することを実現します.時間複雑度O(n),空間複雑度O(n).
チェーンテーブルを入力し、チェーンテーブルの各ノードの値を末尾から印刷します.
問題解決の考え方:
チェーンテーブルを巡回し、1つのスタックに格納し、スタックの先進的な後出の原則に基づいて、末尾からチェーンテーブルを印刷することを実現します.時間複雑度O(n),空間複雑度O(n).
# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
def printListFromTailToHead(self, listNode):
# write code here
if not listNode:
return []
p = listNode
stack = []
res = []
while p:
stack.append(p.val)
p = p.next
for i in range(len(stack)):
res.append(stack.pop())
return res