首页 > 其他 > 详细

leetcode -- Flatten Binary Tree to Linked List

时间:2014-05-26 23:39:20      阅读:397      评论:0      收藏:0      [点我收藏+]

算法:

1. 对root的左子树做处理,让左子树的根节点作为,根节点的右子树,并让右子树作为左子树根节点的右子树的子树

2. 递归遍历右子树

bubuko.com,布布扣
public void flatten(TreeNode root) {
        if(root==null){
            return;
        }
        if(root.left!=null){
            TreeNode leftNode=root.left;
            TreeNode rightNode=root.right;
            root.left=null;
            root.right=leftNode;
            TreeNode tmp=leftNode;//root.left has been null
            while(tmp.right!=null){
                tmp=tmp.right;
            }
            tmp.right=rightNode;
        }
        flatten(root.right);
    }
bubuko.com,布布扣

 

leetcode -- Flatten Binary Tree to Linked List,布布扣,bubuko.com

leetcode -- Flatten Binary Tree to Linked List

原文:http://www.cnblogs.com/csxf/p/3745150.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!