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

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

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.

原题链接:https://oj.leetcode.com/problems/flatten-binary-tree-to-linked-list/

题目:给定二叉树,按前序位置展平成一个链表。

思路:递归处理。把右子树放到左子树之后,并清空左子树。

public void flatten(TreeNode root) {		if(root == null)			return;		flatten(root.left);		flatten(root.right);		TreeNode tmp = root;		if(tmp.left == null)			return;		else			tmp = tmp.left;		while(tmp.right != null)			tmp = tmp.right;		tmp.right = root.right;		root.right = root.left;		root.left = null;	}    // Definition for binary tree    public class TreeNode {        int val;        TreeNode left;        TreeNode right;        TreeNode(int x) { val = x; }    }
相同的做法。可是非递归。

public void flatten(TreeNode root){		while(root != null){			if(root.left != null){				TreeNode tmp = root.left;				while(tmp.right != null)					tmp = tmp.right;				tmp.right = root.right;				root.right = root.left;				root.left = null;			}			root = root.right;		}	}
reference : http://blog.csdn.net/perfect8886/article/details/20000083

版权声明:本文博客原创文章,博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/zfyouxi/p/4710424.html

你可能感兴趣的文章
ZJOI2018游记Round1
查看>>
侧边栏广告和回到顶部
查看>>
使用@property
查看>>
linux文件系统下的特殊权限
查看>>
day9
查看>>
Django(admin)
查看>>
针对express新version,通过Node.js, Express, Ejs, Mongodb搭建一个简单的web应用。可实现用户的查看和增加。...
查看>>
sigaction
查看>>
基础知识回顾系列
查看>>
外键约束
查看>>
RMAN数据库异机迁移步骤
查看>>
mysql metadata lock
查看>>
编程的32个算法
查看>>
CSS:CSS定位和浮动
查看>>
Java:基本数据类型包装类
查看>>
Java:IO流之字节流InputStream、OutputStream详解
查看>>
216 Combination Sum iii
查看>>
杭电1159 Common Subsequence【最长公共子序列】
查看>>
UVa 11464 Even Parity
查看>>
第二周 9.5 --- 9.11
查看>>