首页 > 其他 > 详细

leetcode 114二叉树转换成链表

时间:2019-11-23 20:14:01      阅读:91      评论:0      收藏:0      [点我收藏+]

解法一

可以发现展开的顺序其实就是二叉树的先序遍历。算法和 94 题中序遍历的 Morris 算法有些神似,我们需要两步完成这道题。

将左子树插入到右子树的地方
将原来的右子树接到左子树的最右边节点
考虑新的右子树的根节点,一直重复上边的过程,直到新的右子树为 null

public void flattern(TreeNode root){
 while(root!=null){
    if(root.left==null){
        root=root.right;
     }else{
     TreeNode pre=root.left;
     while(pre.right!=null){
       pre=pre.right;
         }
      pre.right=root.right;
      root.right=root.left;
      root.left=null;
      root=root.right;
          }
      }
  }

leetcode 114二叉树转换成链表

原文:https://www.cnblogs.com/wqali/p/11919332.html

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