LeetCode题解: Flatten Binary Tree to Linked List
来源:互联网 发布:会员制软件 编辑:程序博客网 时间:2024/06/05 20:51
Flatten Binary Tree to Linked List
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
思路:
按preorder顺序访问树,使用迭代的方式进行。这样迭代过程中下一个结点就是当前结点的右子树,而设置当前结点的左子树为空,最后形成目标链表。
题解:
/** * 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 == nullptr) return; list<TreeNode*> q; q.push_back(root); while(! q.empty()) { TreeNode* t = q.front(); q.pop_front(); if (t->right) q.push_front(t->right); if (t->left) q.push_front(t->left); t->left = nullptr; t->right = q.empty() ? nullptr : q.front(); } return; }};
- LeetCode题解: Flatten Binary Tree to Linked List
- LeetCode 题解(51): Flatten Binary Tree to Linked List
- LeetCode题解:Flatten Binary Tree to Linked List
- LeetCode题解——Flatten Binary Tree to Linked List
- 【M】【83】【leetcode题解】Flatten Binary Tree to Linked List
- LeetCode题解-114-Flatten Binary Tree to Linked List
- leetcode Flatten Binary Tree to Linked List C++题解
- 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
- python 文件和路径操作函数小结
- Python MD5文件生成码
- Struts的Action自动装配到Spring 容器的配置
- linux性能监控工具介绍
- linux查看硬件常用命令小结(图文)
- LeetCode题解: Flatten Binary Tree to Linked List
- Struts的action自动装配到spring容器可能出现异常的解决方法
- contos oracle ORA-12162 TNS net service name is incorrectly specified
- 2013武科大蓝桥杯校内选拔赛 H题 火柴棒
- C++重载操作符笔记
- 滨州学院CSDN高校俱乐部第四期公开课——未来IT技术发展趋势及职业规划
- java对象序列化
- POJ 1287 Networking (mst简单)
- LeetCode题解: Longest Consecutive Sequence