0
我有一個節點,我需要通過Python中的遞歸進行反轉。我用下面的代碼:通過遞歸來反轉節點
class Node:
def __init__(self, value):
'''
Initiate a node
:param value: float | int | str
'''
self.value = value
self.nxt = None
def reverse(n):
"""
Reverse a given linked-node
:param n: Node
:return: None
"""
if n is None or n.nxt is None:
return
else:
rest = n.nxt
n.nxt = None
reverse(rest)
#reach the end of rest
current = rest
while current.nxt:
current = current.nxt
current.nxt = n
n = rest
因爲改變n的值只是改變它的引用而不是實際的節點這並不當然的工作,所以結果我得到的僅僅是在同一個節點,其未來=無! 有什麼幫助?
你不能使用分組也不編輯類的構造函數,也沒有添加的參數。這是考試的問題。更何況你需要在這裏改變不返回一個新的節點。 但謝謝你試圖幫助。 –