Python是一個非常流行的編程語言,它的一個重要特點是支持遞歸調用。在Python中,類也可以包含遞歸函數。
類內遞歸,指的是在類中定義的函數遞歸調用自身。這可以讓代碼更加簡潔、清晰,避免了使用全局變量的復雜性。
class Tree: def __init__(self, value): self.value = value self.children = [] def add_child(self, child_node): self.children.append(child_node) def recursion(self): result = self.value for child in self.children: result += child.recursion() return result tree = Tree(1) tree.add_child(Tree(2)) tree.add_child(Tree(3)) tree.children[0].add_child(Tree(4)) tree.children[0].add_child(Tree(5)) tree.children[1].add_child(Tree(6)) print(tree.recursion()) # 輸出21
在這個例子中,我們定義了一個Tree類。這個類有一個值和子節點數組,以及添加子節點和遞歸函數。遞歸函數的作用是計算該節點下的所有子節點和它本身的和。
在主函數中,我們創建了一棵樹,向其中添加了節點,并調用遞歸函數得到了結果??梢钥吹剑悆冗f歸讓代碼更加簡潔易懂。