Uriel's Corner

Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
posts - 0, comments - 50, trackbacks - 0, articles - 594
这题丢了几天没理解题意,一开始WA了都没明白怎么回事,后来搜了一下解题报告才明白题意
题目本身还是挺简单的~直接找右边一个节点就行,而且这题保证了是完全二叉树,于是很多东西都不用考虑了,II那题是这题的加强版~


 1 /**
 2  * Definition for binary tree with next pointer.
 3  * struct TreeLinkNode {
 4  *  int val;
 5  *  TreeLinkNode *left, *right, *next;
 6  *  TreeLinkNode(int x) : val(x), left(NULL), right(NULL), next(NULL) {}
 7  * };
 8  */
 9 class Solution {
10 public:
11     void connect(TreeLinkNode *root) {
12         if(root == NULL) return;
13         if(root->left != NULL) {
14             root->left->next = root->right;
15             connect(root->left);
16         }
17         if(root->right != NULL) {
18             if(root->next == NULL) root->right->next = NULL;
19             else
20                 root->right->next = root->next->left;
21             connect(root->right);
22         }
23     }
24 };

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理