博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode - Flatten Binary Tree to Linked List
阅读量:6825 次
发布时间:2019-06-26

本文共 962 字,大约阅读时间需要 3 分钟。

题目:

Given a binary tree, flatten it to a linked list in-place.

For example,

Given

1        / \       2   5      / \   \     3   4   6

The flattened tree should look like:

1    \     2      \       3        \         4          \           5            \             6
Hints:

If you notice carefully in the flattened tree, each node's right child points to the next node of a pre-order traversal.

思路:

递归,先flatten左边的,再flatten右边的,然后进行连接

package tree;public class FlattenBinaryTreeToLinkedList {    public void flatten(TreeNode root) {        if (root == null) return;        flatten(root.left);        flatten(root.right);        if (root.left != null) {            TreeNode tmp = root.right;            root.right = root.left;            root.left = null;            TreeNode rightMostNode = root;            while (rightMostNode.right != null) {                rightMostNode = rightMostNode.right;            }            rightMostNode.right = tmp;        }    }}

 

转载地址:http://grezl.baihongyu.com/

你可能感兴趣的文章
混合云VPC组网场景和方案分享(一)
查看>>
Syniverse为亚洲100多家运营商提供一系列服务
查看>>
“光伏双反”与“201条款”有何差异?
查看>>
Android集成测试
查看>>
能源互联网将如何开拓光伏新市场?
查看>>
《Hadoop与大数据挖掘》一2.4.1 HDFS Java API操作
查看>>
《iOS App界面设计创意与实践》——iOS开发工具和资源
查看>>
Firefox OS 未死,这两款松下电视会搭载该系统
查看>>
AngularJS 1.3.0 正式发布,超光速发展!
查看>>
Chrome 将进一步削弱 Flash 内容
查看>>
《After Effects CC中文版超级学习手册》——导读
查看>>
Tor 项目弃用 obfs2,开发 obfs4
查看>>
Eclipse设置:背景与字体大小和xml文件中字体大小调整
查看>>
c++强制类型转换(总结)
查看>>
H3C S5500 配置范例
查看>>
工具05:XShell
查看>>
SQL分割字符串详解
查看>>
Apache+Resin整合搭建JSP环境
查看>>
【C/C++学院】(4)c++开篇/类和对象/命名空间/类型增强/三目运算符/const专题/引用专题/函数增强...
查看>>
【踩坑经历】一次Asp.NET小网站部署踩坑和解决经历
查看>>