Description
Given a binary tree, flatten it to a linked list in-place.
For example, given the following tree:
1 | 1 |
The flattened tree should look like:
1 | 1 |
解法
刚开始没弄明白原地展开是什么鬼,意思是把树的左边往右边合并,思路是递归地解决问题,采用头递归地写法更好理解,首先对跟节点的左右子树分别递归地进行展开,得到的情况如下图所示:
1 | 1 |
之后在把根的左子树设为空,并找到原左子树的最下节点与右子树接上即可。
具体代码如下:
1 | /** |