LeetCode | Flatten Binary Tree to Linked List
来源:互联网 发布:基于tensorflow的应用 编辑:程序博客网 时间:2024/06/17 09:06
Given a binary tree, flatten it to a linked list in-place.
For example,
Given
1 / \ 2 5 / \ \ 3 4 6The flattened tree should look like:
1 \ 2 \ 3 \ 4 \ 5 \ 6
click to show hints.
思路:先做一次先序遍历,把结点存储在一个向量中,最后把向量中的每个元素p(i)作为它上个元素p(i-1)的右结点,且p(i-1)的左结点为空。除了最后那个元素,其左右结点都为空。
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: void flatten(TreeNode *root) {if(root){path(root);int i;TreeNode* t = root;root->left = NULL;for(i=1; i<v.size(); ++i){t->right = v[i];t = t->right;t->left = NULL;}t->right = NULL;} }void path(TreeNode *root)//递归,先序遍历{if(root){v.push_back(root);if(root->left)path(root->left);if(root->right)path(root->right);}}private:vector<TreeNode*> v;//存储先序遍历的结果};
0 0
- LeetCode: Flatten Binary Tree to Linked List
- LeetCode Flatten Binary Tree to Linked List
- LeetCode: Flatten Binary Tree to Linked List
- [Leetcode] Flatten Binary Tree to Linked List
- [LeetCode] Flatten Binary Tree to Linked List
- Leetcode: Flatten Binary Tree to Linked List
- leetcode Flatten Binary Tree to Linked List
- LeetCode Flatten Binary Tree to Linked List
- LeetCode - Flatten Binary Tree to Linked List
- 【leetcode】Flatten Binary Tree to Linked List
- [LeetCode]Flatten Binary Tree to Linked List
- [Leetcode]Flatten Binary Tree to Linked List
- [leetcode]Flatten Binary Tree to Linked List
- LeetCode-Flatten Binary Tree to Linked List
- [leetcode] Flatten Binary Tree to Linked List
- LeetCode - Flatten Binary Tree to Linked List
- LeetCode:Flatten Binary Tree to Linked List
- [LeetCode] Flatten Binary Tree to Linked List
- WebView实现离线缓存阅读
- Cocos2dx 创建工程提示警告
- Java对象的存储
- 算法导论 21-3 Tarjan的脱机最小公共祖先算法
- 黑马程序员——C语言——C语言基础语法
- LeetCode | Flatten Binary Tree to Linked List
- apache 2.4配置mod_wsgi
- 程序员学习 集合
- [数学建模]马氏链模型(一)基本介绍
- move_uploaded_file 无返回值 一直失败
- 修改jetty服务器端口号
- LeetCode #Valid Palindrome#
- 实现ListView中item中Button和Item本身点击都有响应
- 陈正冲老师讲c语言之内存的申请malloc() 和释放free()