当前位置: 首页 > news >正文

Leetcode 二叉树展开为链表

在这里插入图片描述

java solution

class Solution {
    public void flatten(TreeNode root) {
        //首先设置递归终止条件
        if(root == null) return;

        //分别递归处理左右子树,
        //递归需要先处理子问题(子树的拉平),然后才能处理当前问题(当前节点的指针调整)
        flatten(root.left);
        flatten(root.right);

        //存储右子树
        TreeNode tempRight = root.right;

        //然后把左子树挪到右子树
        root.right = root.left;
        root.left = null;

        //开始寻找右子树的最深最右节点
        TreeNode curr = root;
        while(curr.right != null) {
            curr = curr.right;
        }

        curr.right = tempRight;
    }
}
http://www.dtcms.com/a/31081.html

相关文章:

  • c++:stack与deque
  • 基于Java+SpringBoot+Vue的前后端分离的汉服推广网站
  • HW面试经验分享 | 北京蓝中研判岗
  • 算法:选择排序(以排队为例)
  • git 克隆及拉取github项目到本地微信开发者工具,微信开发者工具通过git commit、git push上传代码到github仓库
  • 6.z字形变换(python)
  • 【消息队列】认识项目
  • 如何确定服务器是否被黑客入侵爆破
  • GO系列-IO 文件操作
  • 第三章 STM32 IIC驱动
  • 模电知识点总结(6)
  • 【后端】gitHub访问速度太慢解决办法
  • 特斯拉吹哨,自动驾驶端到端重写具身智能
  • 播放器系列1——总概述
  • uni-app(位置1)
  • 设计模式教程:解释器模式(Interpreter Pattern)
  • 高斯积分的证明
  • Grok 3.0 Beta 版大语言模型评测
  • 理解 logits_to_keep = logits_to_keep + 1 在 _get_per_token_logps 中的作用
  • 么是静态住宅IP,跨境电商为什么需要静态住宅IP
  • 杨校老师课堂之信息学奥赛结构体操作使用经典题集锦汇总
  • 力扣LeetCode: 2209 用地毯覆盖后的最少白色砖块
  • Linux C 静态库如何生成并使用
  • Javascript使用Sodium库实现 aead_xchacha20poly1305_ietf加密解密,以及与后端的密文交互
  • Web 自动化测试提速利器:Aqua 的 Web Inspector (检查器)使用详解
  • MySQL 选择数据库
  • SQL Server 创建用户并授权
  • 【算法基础】--前缀和
  • Spring全面讲解(无比详细)
  • [Android]DialogLifeCycle禁止点击背景关闭弹窗