擅长:python、mysql、java
<p>可能的解决方案(您的源代码稍作修改):</p>
<pre><code>class Tree:
def __init__(self, data):
"""Basic tree graph datatype"""
self.data = data
self.branches = []
def addBranch (self, addition):
"""Adds another object of type Tree as a branch"""
self.branches.append(addition)
def getLeaves (self):
"""returns the leaves of a given branch. For
leaves of the tree, specify data"""
if len(self.branches) == 0:
return self.data
else:
branchSum = []
for b in self.branches:
branchSum.append(b.getLeaves())
return branchSum
## Use it
t0 = Tree("t0")
t1 = Tree("t1")
t2 = Tree("t2")
t3 = Tree("t3")
t4 = Tree("t4")
t0.addBranch(t1)
t0.addBranch(t4)
t1.addBranch(t2)
t1.addBranch(t3)
print(t0.getLeaves())
</code></pre>
<p>输出:</p>
^{pr2}$
<p>备注:</p>
<ol>
<li>代码中的某些格式已损坏。在</li>
<li>不确定这是不是你想要的。你想把所有的叶子都放在一个级别的列表中吗?(如果是这样,源代码必须进行调整。)</li>
</ol>