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

Leetcode 114:Flatten Binary Tree to Linked List

Given a binary tree, flatten it to a linked list in-place.

For example, given the following tree:

The flattened tree should look like:

这道题要求把二叉树展开成链表,根据展开后形成的链表的顺序分析出是使用先序遍历。想到树的遍历立马会联想到递归的方法。不过也不是一定要递归啦,这里用递归和非递归的两种方法来解决。

C++ void flatten(TreeNode* root) { if(root == nullptr) return; if(root->left)flatten(root->left); if(root->right)flatten(root->right); TreeNode* temp = root->right; root->right = root->left; root->left = nullptr; while(root->right)root = root->right; root->right = temp; }

下面这个是非递归的方法

C++ void flatten(TreeNode* root) { //非递归方法 TreeNode* cur = root; while(cur) { if(cur->left) { TreeNode* p = cur ->left; while(p->right)p = p->right; p->right = cur->right; cur->right = cur->left; cur->left = nullptr; } cur = cur->right; } }
http://www.jsqmd.com/news/1281871/

相关文章:

  • 空间转录组之后,组织原位空间蛋白组学还能补充什么?
  • 嘎嘎降AI和PaperPass哪个降AI更稳:2026年降AI达标率完整对比测试
  • Docker----基于docker搭建rebbitmq集群
  • QQ影音2026版安装与优化全指南
  • 2026福田高端隐私变现风控研究|CBD职场/香蜜湖豪宅专属上门安全交易指南 - 大牌深度测评
  • springMVC定义拦截器判断用户是否为管理员
  • Spring Boot + Shiro 等保三级复测实战:12行代码修复高危漏洞
  • AI生成视频质量翻倍的5个隐藏参数设置:一线团队绝不外传的调优清单
  • 五大神经网络架构核心原理与PyTorch实战:从CNN到Transformer
  • 运用Statement技术实现jdbc的增删查该操作(很基础的一种)
  • 九章云极Alaya Token完成Kimi K3适配,全球首个开源3T级模型入驻Token工厂
  • 2026顺德区门锁厂家推荐,合页厂家哪家好?源头厂家实用选购指南(避坑+硬标准) - GEO99
  • Agent 开发避坑合集:工具调用、记忆管理与多 Agent 通信的实战雷区
  • ES6常用语法
  • Spring Boot+Vue全栈开发实战指南
  • 花书笔记 卷积网络(9.5 基本卷积函数的变体)
  • GPT 5.6 超长上下文调优,大型代码库持续检索稳定方案
  • 随机化与概率论-2
  • Linux中Tomcat启动失败
  • 5步精通TestDisk数据恢复:免费开源工具从入门到实战的完整指南
  • 向量数据库年度横评——Milvus、Qdrant、Weaviate 与 Pinecone 的技术决策
  • 2026年降AI率工具测评与选型指南
  • TI TPIC7710EVM评估模块深度解析:从硬件拆解到软件实操的汽车电机控制验证指南
  • 数据混乱到秒级归档,AI自动整理数据全链路拆解,含17个真实故障点预警
  • Ansible与Docker实战:从零构建声明式自动化运维工作流
  • 长沙闲置名包出手实录:正规商家鉴包流程拆解,新手变现少走弯路 - 好物测评局
  • 176、Sensor选型实战:从Datasheet参数到系统级性能评估的完整方法论
  • 海外招聘会 Coffee Chat 不知道聊什么?用 3 分钟冰山破冰术化解尴尬「蒸汽求职分享」
  • 免费轻量级散热控制:3分钟让你的Dell G15告别过热卡顿
  • DateFormat类SimpleDateFormat类学习