We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 87f9a26 commit 7b6fd76Copy full SHA for 7b6fd76
problems/二叉树中递归带着回溯.md
@@ -145,22 +145,22 @@ if (cur->right) {
145
}
146
```
147
148
-此时就没有回溯了,这个代码就是通过不了的了。
+因为在递归右子树之前需要还原path,所以在左子树递归后必须为了右子树而进行回溯操作。而只右子树自己不添加回溯也可以成功AC。
149
150
-如果想把回溯加上,就要 在上面代码的基础上,加上回溯,就可以AC了。
+因此,在上面代码的基础上,再加上左右子树的回溯代码,就可以AC了。
151
152
```CPP
153
if (cur->left) {
154
path += "->";
155
traversal(cur->left, path, result); // 左
156
- path.pop_back(); // 回溯
157
- path.pop_back();
+ path.pop_back(); // 回溯,抛掉val
+ path.pop_back(); // 回溯,抛掉->
158
159
if (cur->right) {
160
161
traversal(cur->right, path, result); // 右
162
163
+ path.pop_back(); // 回溯(非必要)
+ path.pop_back();
164
165
166
0 commit comments