劍指offer 03 從尾到頭列印鍊錶

2022-08-09 20:30:21 字數 970 閱讀 4094

輸入乙個鍊錶,按鍊錶從尾到頭的順序返回乙個arraylist。

1.存到列表中,直接反向輸出

2.棧的實現

3.遞迴。先進到最裡面一層取出值,再一層一層出來

1.

class

solution:

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

defprintlistfromtailtohead(self, listnode):

#write code here

l =head =listnode

while

head:

head =head.next

#l.reverse()

return(l[::-1])

2、

class

solution:

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

defprintlistfromtailtohead(self, listnode):

#write code here

l =head =listnode

while

head:

head =head.next

#l.reverse()

stack=

while

l:

return(stack)

3、

class

solution:

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

defprintlistfromtailtohead(self, listnode):

result =

defsolutions(node):

ifnode:

solutions(node.next)

#write code here

solutions(listnode)

return result

劍指offer 03 從尾到頭列印鍊錶

題目描述 輸入乙個鍊錶,按煉錶值從尾到頭的順序返回乙個arraylist。思路 1 建立鍊錶 頭指標,遍歷指標,新節點指標 初始化,讀取鍊錶 2 怎麼使用棧 s.top s.push s.pop 3 怎麼使用 vectora,插入a.push back 訪問可以用a i struct listnod...

劍指offer 03 從尾到頭列印鍊錶

題目描述 輸入乙個鍊錶,按鍊錶從尾到頭的順序返回乙個arraylist。時間限制 c c 1秒,其他語言2秒 空間限制 c c 64m,其他語言128m 題目示例 輸入 返回值 58,24,0,67 解法分析可以使用unshift 方法,將鍊錶從頭到尾加到arr 0 然後返回arr。當然,正序加入a...

劍指offer 從尾到頭列印列表

1.方法一 看到這道題的時候,我的最初想法是鍊錶翻轉,在輸出。在原書中作者認為這不是最好的解決辦法,因為這樣會改變鍊錶的原來的結構,如果在面試中遇到類似的問題,應該主動詢問面試官這樣的方發是否可行。1.方法二 鍊錶的逆序列印,首先肯定要遍歷鍊錶,可是輸出的順序卻是從尾到頭。也就是說,第乙個遍歷到的節...