【leetcode】116. Populating Next Right Pointers in Each Node
2017-09-03 07:49
351 查看
「思路」
因为是完美的二叉树所以问题的难度降低了不少。如果一个root有左右子节点则左next指向右。如果root有next节点,则root的右next指向root的next的左,否则指向NULL。
「运行结果」
其中version 2 仅仅是把两个函数合并成了一个函数,效率上提高了3ms。
- version1
class Solution { public: void connect(TreeLinkNode *root) { if(!root)return; rightlink(root); } void rightlink(TreeLinkNode *root) { if(root->left && root->right) { root->left->next=root->right; if(root->next) { root->right->next=root->next->left; } else { root->next=NULL; } rightlink(root->left); rightlink(root->right); } else return; } };
version 2
class Solution { public: void connect(TreeLinkNode *root) { if(!root)return; if(root->left && root->right) { root->left->next=root->right; if(root->next) { root->right->next=root->next->left; } else { root->next=NULL; } connect(root->left); connect(root->right); } else return; }
相关文章推荐
- LeetCode 116 Populating Next Right Pointers in Each Node
- Leetcode 116. Populating Next Right Pointers in Each Node
- LeetCode 116: Populating Next Right Pointers in Each Node
- Leetcode 116 Populating Next Right Pointers in Each Node
- leetcode-116. Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node - LeetCode 116
- [LeetCode] 116. Populating Next Right Pointers in Each Node
- LeetCode-116. Populating Next Right Pointers in Each Node【二叉树同层节点构成链表】
- leetcode-116-Populating Next Right Pointers in Each Node
- Leetcode 116. Populating Next Right Pointers in Each Node
- leetcode_c++:树: Populating Next Right Pointers in Each Node(116)
- Leetcode 116. Populating Next Right Pointers in Each Node
- 【LEETCODE】116-Populating Next Right Pointers in Each Node
- LeetCode 116. Populating Next Right Pointers in Each Node
- [LeetCode]题解(python):116-Populating Next Right Pointers in Each Node
- LeetCode.116(117) Populating Next Right Pointers in Each Node && II
- leetcode 116. Populating Next Right Pointers in Each Node
- [leetcode] 116.Populating Next Right Pointers in Each Node
- [leetcode-116]Populating Next Right Pointers in Each Node(c++)
- [LeetCode 116 117] - 填充每一个节点的指向右边邻居的指针I & II (Populating Next Right Pointers in Each Node I & II)