LeetCode Populating Next Right Pointers in Each Node II
来源:互联网 发布:淘宝店铺客服怎么登陆 编辑:程序博客网 时间:2024/05/21 06:50
题目:
Follow up for problem "Populating Next Right Pointers in Each Node".
What if the given tree could be any binary tree? Would your previous solution still work?
Note:
- You may only use constant extra space.
For example,
Given the following binary tree,
1 / \ 2 3 / \ \ 4 5 7
After calling your function, the tree should look like:
1 -> NULL / \ 2 -> 3 -> NULL / \ \ 4-> 5 -> 7 -> NULL
/** * Definition for binary tree with next pointer. * struct TreeLinkNode { * int val; * TreeLinkNode *left, *right, *next; * TreeLinkNode(int x) : val(x), left(NULL), right(NULL), next(NULL) {} * }; */class Solution {public: void connect(TreeLinkNode *root) { TreeLinkNode *tmp; if(root != NULL) { if(root->left != NULL) { root->left->next = root->right; if(root->right == NULL) { tmp = root->next; while(tmp != NULL && root->left->next == NULL) { if(tmp->left != NULL) root->left->next = tmp->left; else root->left->next = tmp->right; tmp = tmp->next; } } } if(root->right != NULL) { tmp = root->next; while(tmp != NULL && root->right->next == NULL) { if(tmp->left != NULL) root->right->next = tmp->left; else root->right->next = tmp->right; tmp = tmp->next; } } connect(root->right); connect(root->left); } }};
0 0
- 【LeetCode】Populating Next Right Pointers in Each Node Populating Next Right Pointers in Each Node II
- LeetCode Populating Next Right Pointers in Each Node II
- [Leetcode] Populating Next Right Pointers in Each Node II
- [LeetCode] Populating Next Right Pointers in Each Node II
- leetcode 79: Populating Next Right Pointers in Each Node II
- [Leetcode] Populating Next Right Pointers in Each Node ii
- leetcode Populating Next Right Pointers in Each Node II
- 【leetcode】Populating Next Right Pointers in Each Node II
- [Leetcode]Populating Next Right Pointers in Each Node II
- [leetcode] Populating Next Right Pointers in Each Node II
- LeetCode-Populating Next Right Pointers in Each Node II
- LeetCode - Populating Next Right Pointers in Each Node II
- [LeetCode]Populating Next Right Pointers in Each Node II
- leetcode Populating Next Right Pointers in Each Node II
- LeetCode | Populating Next Right Pointers in Each Node II
- [leetcode]Populating Next Right Pointers in Each Node II
- 【LeetCode OJ】Populating Next Right Pointers in Each Node II
- [LeetCode] Populating Next Right Pointers in Each Node II
- C/C++中的几个小语法点
- 委托和事件
- OpenCV中对avi视频的处理,并修改视频大小
- freeswitch 对dtmf 支持
- iOS开发单例模式 dispatch_once
- LeetCode Populating Next Right Pointers in Each Node II
- 经验之谈WCF选择绑定
- 第五届蓝桥杯试题——绳圈
- hdu 4699 模拟栈
- AndroidSQLite3使用小例(超棒)
- Android使用静态变量传递数据
- 解放思想,Web打印终极解决方案
- js_day26--js DOM编程(forms/form对象+table对象)
- 使用花生壳ADO控件互联网远程连接到服务器