C Easy Iterative Solution
\nstruct Node* connect(struct Node* root) {\n\tif (!root)\n        return root;\n    \n    struct Node* ptr_node = root;\n    struct Node* first = ptr_node;\n  
```\nstruct Node* connect(struct Node* root) {\n\tif (!root)\n        return root;\n    \n    struct Node* ptr_node = root;\n    struct Node* first = ptr_node;\n    \n    while (ptr_node->left) {\n        \n        while (ptr_node) {\n            \n            ptr_node->left->next = ptr_node->right;\n            \n            if (ptr_node->next) {\n                ptr_node->right->next = ptr_node->next->left;\n            }\n            \n            ptr_node = ptr_node->next;\n        }\n        \n        first = first->left;\n        ptr_node = first;\n    }\n    \n    return root;\n}\n```\n**Like it? please upvote...**
['C', 'Iterator']