C++ short recursive solution, no extra space needed
Key points:\n Use parent\'s next arrow to find right children\'s next buddy in the neighboring tree.\n In short: root->right->next = root->next->left.\n* Take c
Key points:\n* Use parent\'s next arrow to find right children\'s next buddy in the neighboring tree.\n* In short: root->right->next = root->next->left.\n* Take care of current level\'s children\'s next arrow problem before move down to children subtree.\n```\n  Node* connect(Node* root) {\n    if (root) {\n      if (root->left) {\n        root->left->next = root->right;\n        if (root->next)\n          root->right->next = root->next->left;\n        connect(root->left);\n        connect(root->right);\n      }\n    }\n    return root;\n  }\n```
['Recursion', 'C']