LeetCode | Flatten Binary Tree to Linked List(二叉树转化成链表)
来源:互联网 发布:灯光效果设计软件 编辑:程序博客网 时间:2024/05/29 14:55
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.
Hints:
If you notice carefully in the flattened tree, each node's right child points to the next node of a pre-order traversal.
题目解析:
这棵树的先序遍历是有序的。并且根据结构的特性,变形后,按照右子树链形成链表形式。
一般对树进行操作,也都用递归的形式。将做子树递归后形成的链表,插入到根结点和右子树之间。这样递归往复进行即可。
一定要有递归和模块的思想。就假设左边递归后已经形成,之后就按照链表处理就行了。这种方法比其他方法简单。
class Solution {public: void flatten(TreeNode *root) { if(root == NULL) return ; if(root->left){ flatten(root->left); TreeNode *cur = root->left; while(cur->right){ cur = cur->right; } cur->right = root->right; root->right = root->left; root->left = NULL; } if(root->right) flatten(root->right); }};
0 0
- LeetCode | Flatten Binary Tree to Linked List(二叉树转化成链表)
- Flatten Binary Tree to Linked List (二叉树转前序链表)【leetcode】
- LeetCode OJ 之 Flatten Binary Tree to Linked List (把二叉树转换成链表)
- Flatten Binary Tree to Linked List 二叉树拉伸成链表
- [LeetCode] Flatten Binary Tree to Linked List 将二叉树展开成链表 C++
- LeetCode Flatten Binary Tree to Linked List 将二叉树展开成链表
- LeetCode 114. 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
- Billboard(线段树)
- android产生随机数
- C++类设计模版
- Maven 工程的 jdk 配置(三个版本一致)
- 敏捷开发—用户故事
- LeetCode | Flatten Binary Tree to Linked List(二叉树转化成链表)
- poj 2151 Check the difficulty of problems(概率dp)
- 学习OpenGL(五)颜色、光照与材质
- poj1269 Intersecting Lines(简单几何,直线平行,共线或相交)
- 百练 2755 dp
- HDU 1789 Doing Homework again(贪心)
- 英语命题规律
- 杭电2094 产生冠军(STL map和set)
- hdu 2553 N皇后问题(DFS+回溯)