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

二叉树的实现与QJ题总结

首先对递归的本质进行一些理解.

递归在逻辑上就是创建很多个一样的子函数,每个函数在遇到返回值或代码走完时结束直到主函数结束,在物理上就是不断的压栈和消栈.

同时我们要知道一个main函数中的代码需会生成一个它自己的代码空间,例如main中的一个函数,它内部的代码会有一份空间,编译器通过这份空间中的代码开栈.如果该函数为递归函数,那么就会通过这份空间的代码不断地开栈而非每遇到一个该函数就给它内部的代码再开一份空间.

总结而言就是编译器在运行过程中遇到一个新函数时,会为它内部的代码创建一份空间,以后在遇到这个函数时就会在调用对应空间的代码而非再创建一份.

下面是二叉树的实现

声明

实现

层序遍历使用了queue,下面的完全二叉树的识别也是.

对于能通过第一个NULL来识别的解释:

只要遇到NULL时,后面一排有非空,就一定能遍历到.
原因:遇到NULL的同排有非空一定能遍历到,此是都不用到下一排了.
故下一排的结点只可能是第一个NULL之前产生的.
总之在遇到第一个NULL之前,下一排的结点一定都出现了.

下面是一些QJ题

1.前序遍历

2.相同的树

3.对称二叉树

4.另一棵树的子树

5.二叉树遍历

http://www.jsqmd.com/news/306299/

相关文章:

  • nanopb与串口通信结合的实战配置
  • AssetRipper全面解析:Unity资源提取工具深度指南
  • 解锁游戏资源解析:ValveResourceFormat全攻略
  • 3步搭建企业级监控系统:WVP-GB28181-Pro开源视频监控平台零门槛部署指南
  • Z-Image-Turbo图文教程:一步步教你搭建个人画站
  • 掌握LTX-2视频生成:ComfyUI-LTXVideo全流程实战指南
  • 探索voidImageViewer:如何在Windows系统获得高效图像浏览体验
  • 游戏存档修改高级技巧:从问题解决到个性化定制的完整指南
  • 亲测B站开源IndexTTS 2.0,AI配音效果惊艳到不敢信
  • 为什么说Z-Image-Turbo是当前最佳开源文生图方案?
  • DeepSeek-R1-Distill-Llama-8B入门:数学与代码生成双优体验
  • AI语音合成技术的革新:开源多语言文本转语音模型突破与应用
  • 语音情感识别实战应用:客服对话情绪监控方案详解
  • 2025Windows任务栏效率革命:TaskBarMaster的多维度管理全解析
  • 小白也能懂的YOLO11:一键部署目标检测环境
  • 再也不用手动配置!Z-Image-Turbo开箱即用真香体验
  • 万物识别模型推理延迟高?GPU加速部署实战解析
  • MGeo推理脚本复制技巧:cp命令工作区部署实操说明
  • 一键启动HeyGem WebUI,数字人视频批量生成实操
  • 灵动桌面:用RunCat为Windows注入系统活力的任务栏萌宠
  • AI交互开发板ESP32S3:打造智能交互设备的完整方案
  • 家庭网络监控指南:选择合适的带宽管理工具提升网络体验
  • Hunyuan-MT-7B高效运行:GPU算力最大化利用的配置方法
  • 解锁3D建模新技能:零基础通关Blockbench低多边形创作秘诀
  • 实测对比主流视觉模型,GLM-4.6V-Flash-WEB优势明显
  • 如何通过ip2region实现毫秒级IP地理定位:本地化部署开发者实战指南
  • OCR模型部署总出错?cv_resnet18_ocr-detection故障排查手册
  • 保姆级教程:如何用VibeThinker-1.5B解高阶算法题
  • 超详细版STLink配置教程:适合新手的完整指南
  • 零代码构建企业级知识图谱:本地智能处理驱动的隐私保护知识工程实践