LeetCode 116 Populating Next Right Pointers in Each Node
2015-06-15 21:05
567 查看
题目
分析
可以通过层序遍历,将一层的节点放入容器中,前一个节点指向后一个,最后一个节点指向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) { if (root == NULL) return; vector<TreeLinkNode*> tree; tree.push_back(root); while(!tree.empty()){ vector<TreeLinkNode*> vec; int i; for(i=0;i<tree.size()-1;i++){ tree[i]->next = tree[i+1]; if(tree[i]->left != NULL) vec.push_back(tree[i]->left); if(tree[i]->right != NULL) vec.push_back(tree[i]->right); } tree[i]->next = NULL; if(tree[i]->left != NULL) vec.push_back(tree[i]->left); if(tree[i]->right != NULL) vec.push_back(tree[i]->right); tree = vec; } } };
相关文章推荐
- leetcode 25:Reverse Nodes in k-Group
- Remove Nth Node From End of List
- leetcode -Swap Nodes in Pairs
- Node.js学习--基础知识(6)--常用工具util和事件EventEmitter
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Java for LeetCode 222 Count Complete Tree Nodes
- Reverse Nodes in k-Group
- Node.js学习
- Node.js学习--基础知识(8)--全局对象和全局变量
- Hadoop 2.0 NameNode HA和Federation实践
- 【转】nodejs 模块加载
- Node.js学习--基础知识(5)--npm
- nodejs 中压缩/解压方案
- Angular Material串串学客户端开发 2 - Node.js模块加载机制Require()
- node.js 初体验
- Node.js+Yeoman构建前端自动化Web应用
- HDU 4587 Two Nodes、POJ 2375 Reliable Nets (Tarjan)
- Clone Graph Leetcode 133
- DOM Nodes