Skip to content

Commit 21cd6dc

Browse files
authored
Update binary-tree-preorder-traversal.cpp
1 parent 36cfaf2 commit 21cd6dc

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

C++/binary-tree-preorder-traversal.cpp

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,26 +14,23 @@ class Solution {
1414
public:
1515
vector<int> preorderTraversal(TreeNode* root) {
1616
vector<int> res;
17-
TreeNode *prev = nullptr;
18-
auto *cur = root;
19-
while (cur) {
20-
if (!cur->left) {
21-
res.emplace_back(cur->val);
22-
prev = cur;
23-
cur = cur->right;
17+
auto *curr = root;
18+
while (curr) {
19+
if (!curr->left) {
20+
res.emplace_back(curr->val);
21+
curr = curr->right;
2422
} else {
25-
auto *node = cur->left;
26-
while (node->right && node->right != cur) {
23+
auto *node = curr->left;
24+
while (node->right && node->right != curr) {
2725
node = node->right;
2826
}
2927
if (!node->right) {
30-
res.emplace_back(cur->val);
31-
prev = cur;
32-
node->right = cur;
33-
cur = cur->left;
28+
res.emplace_back(curr->val);
29+
node->right = curr;
30+
curr = curr->left;
3431
} else {
3532
node->right = nullptr;
36-
cur = cur->right;
33+
curr = curr->right;
3734
}
3835
}
3936
}

0 commit comments

Comments
 (0)