劍指Offer(三) 從尾到頭列印鍊錶

2022-08-24 17:24:12 字數 648 閱讀 4496

刷題平台:牛客網

輸入乙個鍊錶,返回乙個反序的鍊錶。

通常,這種情況下,我們不希望修改原鍊錶的結構。返回乙個反序的鍊錶,這就是經典的「後進先出」,我們可以使用棧實現這種順序。每經過乙個結點的時候,把該結點放到乙個棧中。當遍歷完整個鍊錶後,再從棧頂開始逐個輸出結點的值,給乙個新的鍊錶結構,這樣鍊錶就實現了反轉。

python:

直接使用列表的插入方法,每次插入資料,只插入在首位。

#

-*- coding:utf-8 -*-

#class listnode:

#def __init__(self, x):

#self.val = x

#self.next = none

class

solution:

#返回從尾部到頭部的列表值序列,例如[1,2,3]

defprintlistfromtailtohead(self, listnode):

#write code here

result =

while

listnode:

result.insert(0, listnode.val)

listnode =listnode.next

return result

劍指offer刷題(三)從尾到頭列印鍊錶

題目 輸入乙個鍊錶,按鍊錶從尾到頭的順序返回乙個arraylist。思路1 建立乙個列表,把煉表裡的元素從頭到尾依次放入列表中,然後反轉列表 class solution 返回從尾部到頭部的列表值序列,例如 1,2,3 defprintlistfromtailtohead self,listnode...

劍指Offer 從尾到頭列印鍊錶

題目1511 從尾到頭列印鍊錶 時間限制 1 秒 記憶體限制 128 兆 特殊判題 否 提交 1082 解決 350 題目描述 輸入乙個鍊錶,從尾到頭列印鍊錶每個節點的值。輸入 每個輸入檔案僅包含一組測試樣例。每一組測試案例包含多行,每行乙個大於0的整數,代表乙個鍊錶的節點。第一行是鍊錶第乙個節點的...

劍指offer 從尾到頭列印鍊錶

輸入乙個鍊錶,從尾到頭列印鍊錶每個節點的值。輸入描述 輸入為鍊錶的表頭 輸出描述 輸出為需要列印的 新鍊錶 的表頭 分析 題目本意是用的棧結構的先入後出,但是有了容器類的高階方法之後,使用棧的意義就不大了。c struct listnode class solution listnode p hea...