ITPub博客

首页 > IT职业 > IT职场 > 二叉树展开为链表

二叉树展开为链表

原创 IT职场 作者:Caomeinico 时间:2021-10-25 13:27:53 0 删除 编辑

给你二叉树的根结点 root ,请你将它展开为一个单链表:




展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。


展开后的单链表应该与二叉树 先序遍历 顺序相同。

class Solution {
    public void flatten(TreeNode root) {
        if(root == null){
            return;
        }
        TreeNode cur = root;
        while(cur != null){
            if(cur.left != null){
                TreeNode next = cur.left;
                TreeNode temp = next;
                while(temp.right != null){
                    temp = temp.right;
                }
                temp.right = cur.right;
                cur.left = null;
                cur.right = next;
            }
            cur = cur.right;
        }
    }
}

更多建站及源码交易信息请见 GoodMai

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/70008684/viewspace-2839061/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2021-10-20

  • 博文量
    14
  • 访问量
    2742