輸入乙個鍊錶,按鍊錶從尾到頭的順序返回乙個arraylist。
1.存到列表中,直接反向輸出
2.棧的實現
3.遞迴。先進到最裡面一層取出值,再一層一層出來
1.
classsolution:
#返回從尾部到頭部的列表值序列,例如[1,2,3]
defprintlistfromtailtohead(self, listnode):
#write code here
l =head =listnode
while
head:
head =head.next
#l.reverse()
return(l[::-1])
2、
classsolution:
#返回從尾部到頭部的列表值序列,例如[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、
classsolution:
#返回從尾部到頭部的列表值序列,例如[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.方法二 鍊錶的逆序列印,首先肯定要遍歷鍊錶,可是輸出的順序卻是從尾到頭。也就是說,第乙個遍歷到的節...