回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我必须做一个函数来计算在我的二叉搜索树中以W开头的单词数。现在,我的程序返回0,即使有一个单词以W开头</p>
<p>这是我的密码:</p>
<pre><code>def countNodes(tree):
count = 0
if tree == None:
return count
if tree['left'] != None:
if tree['data'][1][0] == 'w' or tree['data'][1][0] == 'W':
return count+1
if tree['right'] != None:
if (tree['data'][1][0] == 'w' or tree['data'][1][0] == 'W'):
return count+1
countNodes(tree['left'])
countNodes(tree['right'])
return count
def main():
myTree = None #create an empty tree
#Create a tree with the nodes [20, 2, 25, 14, 1, 23, 75, 93, 74]
#Note that the add function always returns the root of the BST!
myTree = add(myTree, [20, "Jenna"])
myTree = add(myTree, [2, "Wendy"])
myTree = add(myTree, [25, "Layla"])
myTree = add(myTree, [14, "Robert"])
myTree = add(myTree, [1, "Jamie"])
myTree = add(myTree, [23, "Stephanie"])
myTree = add(myTree, [75, "Jay"])
myTree = add(myTree, [93, "Barbara"])
myTree = add(myTree, [74, "John"])
print(countNodes(myTree))
</code></pre>