其他分享
首页 > 其他分享> > 114. 二叉树展开为链表

114. 二叉树展开为链表

作者:互联网

非递归实现,且空间复杂度O(n):


class Solution {
    public void flatten(TreeNode root) {
        LinkedList<TreeNode> sta=new LinkedList<>();
        TreeNode p=root;
        TreeNode pre=null;
        while(p!=null||!sta.isEmpty()){
            while(p!=null){
                sta.add(p.right);//可能会压入空节点
                if(pre!=null){
                   pre.left=null;
                   pre.right=p;
                }  
                pre=p;
                p=p.left;
                    
            }
            p=sta.removeLast();
            
        }

    }
}

标签:pre,right,TreeNode,sta,链表,114,二叉树,null,LinkedList
来源: https://www.cnblogs.com/wsshub/p/14880807.html