bool findNodePreorder(TreeNode* root, char letter, string& path) { if (!root) return false; if (root->letter == letter) { path += letter; return true; } if (findNodePreorder(root->left, letter, path)) { path = root->letter + " -> " + path; return true; } if (findNodePreorder(root->right, letter, path)) { path = root->letter + " -> " + path; return true; } return false; }改为后序遍历搜索
时间: 2023-06-20 21:07:09 浏览: 49
以下是将前序遍历搜索改为后序遍历搜索的代码:
```
bool findNodePostorder(TreeNode* root, char letter, string& path) {
if (!root) return false;
if (findNodePostorder(root->left, letter, path)) {
path = path + " <- " + root->letter;
return true;
}
if (findNodePostorder(root->right, letter, path)) {
path = path + " <- " + root->letter;
return true;
}
if (root->letter == letter) {
path += root->letter;
return true;
}
return false;
}
```
这里使用了递归的方式进行后序遍历搜索。在后序遍历中,我们先遍历左子树,再遍历右子树,最后遍历根节点。因此,在搜索过程中,我们先递归遍历左子树和右子树,最后再判断根节点是否为目标节点。如果是目标节点,则将其加入路径中,否则返回 false。对于左右子树的遍历结果,我们需要判断是否为目标节点的祖先节点,如果是则将该节点加入路径中,并返回 true。在加入路径时,我们需要注意路径的顺序应该是从目标节点到根节点。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)