擅长:python、mysql、java
<p>这是因为您的<code>find</code>函数只查找最左边分支中的节点。想一个树的例子如下:</p>
<pre><code> A
/ \
B C
/ \
D E
</code></pre>
<p>假设您正在寻找节点C,<code>find</code>函数首先查找分支B,然后检查D.D没有子节点,因此它结束<code>for</code>循环并返回<code>None</code>。它不会搜索其他分支,因为有返回的内容。在</p>
<p>实际上,如果你想在树中找到一个节点,你应该实现BFS或DFS算法来遍历你的树。由于您的<code>find</code>函数是DFS,我将为您编写DFS代码:</p>
^{pr2}$
<p><code>s_list</code>作为一个搜索路径,它记录了<code>find</code>应该检查的每个节点。如果检查了所有节点,则返回<code>None</code>。在</p>