diff options
Diffstat (limited to 'populating_right_pointer.cpp')
-rw-r--r-- | populating_right_pointer.cpp | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/populating_right_pointer.cpp b/populating_right_pointer.cpp deleted file mode 100644 index d977321..0000000 --- a/populating_right_pointer.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "leetcode.h" - -class Solution { -public: - Node *connect(Node *root) { - Node *currParent = root, *baseChild, *currChild, *nextChild; - while (currParent) { - while (currParent->next && !currParent->left && !currParent->right) - currParent = currParent->next; - currChild = baseChild = - currParent->left ? currParent->left : currParent->right; - while (currChild) { - if (currParent->right && currChild != currParent->right) - nextChild = currParent->right; - else { - currParent = currParent->next; - while (currParent && !currParent->left && !currParent->right) - currParent = currParent->next; - nextChild = currParent ? currParent->left ? currParent->left - : currParent->right - : currParent; - } - currChild->next = nextChild; - currChild = nextChild; - } - currParent = baseChild; - } - return root; - } -}; - -int main() {} |