题解 | #二叉搜索树与双向链表#

二叉搜索树与双向链表

https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5

方法1、中序遍历+全员入队
public class Solution {
    Queue<TreeNode>queue=new LinkedList<>();
    public TreeNode Convert(TreeNode pRootOfTree) {
        inOrder(pRootOfTree);
        TreeNode head=queue.poll();
        TreeNode cur=head;
        TreeNode pre=null;
        while(!queue.isEmpty()){
            pre=cur;
            cur=queue.poll();
            pre.right=cur;
            cur.left=pre;
        }
        return head;
    }
    public void inOrder(TreeNode cur){
        if(cur==null)
            return ;
        inOrder(cur.left);
        queue.offer(cur);
        inOrder(cur.right);
    }

}
方法2、中序遍历+递归
难点在于需要创建两个变量来记录链表的头和每个节点的父节点
public class Solution {
    TreeNode head=null;
    TreeNode pre=null;
    public TreeNode Convert(TreeNode root) {
        if(root==null)return null;
        Convert(root.left);
        if(pre==null){
            head=root;
            pre=root;
        }else{
            pre.right=root;
            root.left=pre;
            pre=root;
        }
        Convert(root.right);
        return head;
        
    }

}
知识点、递归到左下角的语句为pre==null保证了该节点是从根节点开始遍历的第一个节点,在中序遍历的情况下就为左下角节点
if(root==null)return null;
Convert(root.left);
if(pre==null){
    head=root;
    pre=root;
}




全部评论

相关推荐

2025-12-14 11:43
黑龙江大学 Java
用微笑面对困难:确实比较烂,可以这么修改:加上大学的qs排名,然后大学简介要写一些,然后硕士大学加大加粗,科研经历第一句话都写上在复旦大学时,主要负责xxxx,简历左上角把学校logo写上,建议用复旦大学的简历模板
点赞 评论 收藏
分享
01-09 11:18
门头沟学院 Java
作者先叠个甲:本人双非本,秋招拿到了多个大厂offer,这个过程也不容易,但是在看到很多秋招胜利之后说自己一路有多艰辛的文章,总感觉有一点不对劲,想了很久打算写一篇文章分析一下,本文仅代表作者观点,不认同的可以在评论区大家一起理性讨论。&nbsp;秋招已经结束,各类社交平台出现一大批“大厂上岸”胜利结算。文章的叙事逻辑高度相同,开篇就渲染焦虑和困惑,学习时的挑灯夜读、投递时的屡屡碰壁、面试时的如履薄冰,将过往经历包装成一步艰辛的“奋斗史”,然后最终以大厂offer的胜利结尾,字里行间全是苦尽甘来的优越感。但是在我看来,这类文章的本质是结果导向的、带有浮夸的叙事,因为其内核不是分享经验,而是借“苦难”之名...
创作小队长:你的批判视角非常犀利,尤其“结果决定叙事权”的洞察非常精准,哈哈想邀请你来成为我们的创作者🫰 但我想补充一个视角:许多分享者的初衷并非炫耀结果或者苦难,我更愿意相信他们在这个过程中付出了很多,在这场战役结束后,他们迫不及待地想被看到,记录和分享都是给自己的一个交代,而非真的教会别人什么,他们的初衷未必是想制造焦虑。求职市场的残酷、经济环境的下行、世俗价值观才是这种叙事流行的土壤,作为一个普通人无法抵抗洪流。 感谢你发起这场讨论。理想的社区,既需要这样锐利的批判来保持清醒,你的洞察非常犀利,也许会启发一些人,能逐渐改变这种叙事~
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务