news 2026/4/23 17:25:28

【C++复习】二叉树进阶算法题 (题目 + 代码)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【C++复习】二叉树进阶算法题 (题目 + 代码)

二叉树进阶算法题


文章目录

  • 二叉树进阶算法题
  • 606. 根据二叉树创建字符串
  • 102. 二叉树的层序遍历
  • 107. 二叉树的层序遍历 II
  • 总结

606. 根据二叉树创建字符串



代码如下(示例):

class Solution{public:stringtree2str(TreeNode*root){string res;if(root==nullptr)returnres;res+=to_string(root->val);// 表示两种情况// 左为空,右不为空 和 左不为空if(root->left||root->right){res+='(';res+=tree2str(root->left);res+=')';}// 右不为空if(root->right){res+='(';res+=tree2str(root->right);res+=')';}returnres;}};

102. 二叉树的层序遍历

代码如下(示例):

class Solution{public:vector<vector<int>>levelOrder(TreeNode*root){vector<vector<int>>result;if(root==nullptr)returnresult;queue<TreeNode*>st;st.push(root);while(!st.empty()){intsz=st.size();vector<int>littleresult;for(inti=0;i<sz;i++){TreeNode*top=st.front();st.pop();littleresult.push_back(top->val);if(top->left)st.push(top->left);if(top->right)st.push(top->right);}result.push_back(littleresult);}returnresult;}};

107. 二叉树的层序遍历 II


这道题就是在上一道题的基础上面加上了一个逆序!

代码如下(示例):

class Solution{public:vector<vector<int>>levelOrderBottom(TreeNode*root){vector<vector<int>>result;if(root==nullptr)returnresult;queue<TreeNode*>st;st.push(root);while(!st.empty()){intsz=st.size();vector<int>littleresult;for(inti=0;i<sz;i++){TreeNode*top=st.front();st.pop();littleresult.push_back(top->val);if(top->left)st.push(top->left);if(top->right)st.push(top->right);}result.push_back(littleresult);}reverse(result.begin(),result.end());returnresult;}};

总结

这篇文章是作者搜集大量面经和资料这里出来的。感谢你的支持
作者wkm是一名中国矿业大学(北京) 大一的新生,希望得到你的关注
如果可以的话,记得一键三联!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 13:53:37

SketchUp STL插件:从虚拟设计到实体制造的能力进化之旅

SketchUp STL插件&#xff1a;从虚拟设计到实体制造的能力进化之旅 【免费下载链接】sketchup-stl A SketchUp Ruby Extension that adds STL (STereoLithography) file format import and export. 项目地址: https://gitcode.com/gh_mirrors/sk/sketchup-stl 想要将Ske…

作者头像 李华
网站建设 2026/4/23 13:59:36

ComfyUI Manager全方位配置指南:从新手到专家的完整解决方案

ComfyUI Manager全方位配置指南&#xff1a;从新手到专家的完整解决方案 【免费下载链接】ComfyUI-Manager 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-Manager 用户痛点分析与解决方案矩阵 在AI绘画创作过程中&#xff0c;你是否遇到过这些问题&#xff1…

作者头像 李华
网站建设 2026/4/23 8:18:18

如何彻底解锁艾尔登法环帧率限制:全面优化工具使用指南

如何彻底解锁艾尔登法环帧率限制&#xff1a;全面优化工具使用指南 【免费下载链接】EldenRingFpsUnlockAndMore A small utility to remove frame rate limit, change FOV, add widescreen support and more for Elden Ring 项目地址: https://gitcode.com/gh_mirrors/el/El…

作者头像 李华
网站建设 2026/4/23 14:59:21

SketchUp STL插件终极指南:从建模到打印的完整解决方案

SketchUp STL插件终极指南&#xff1a;从建模到打印的完整解决方案 【免费下载链接】sketchup-stl A SketchUp Ruby Extension that adds STL (STereoLithography) file format import and export. 项目地址: https://gitcode.com/gh_mirrors/sk/sketchup-stl 在当今数字…

作者头像 李华
网站建设 2026/4/23 16:25:46

WeMod专业版功能解锁技术深度解析

WeMod专业版功能解锁技术深度解析 【免费下载链接】Wemod-Patcher WeMod patcher allows you to get some WeMod Pro features absolutely free 项目地址: https://gitcode.com/gh_mirrors/we/Wemod-Patcher 本文深入探讨WeMod Patcher的技术实现原理、核心架构设计以及…

作者头像 李华
网站建设 2026/4/23 14:59:32

OBS多平台直播终极攻略:从零到一的专业推流解决方案

还在为不同平台的粉丝需要分别直播而烦恼吗&#xff1f;想要一次性覆盖所有主流平台却不知从何入手&#xff1f;作为直播新手&#xff0c;你可能面临配置复杂、操作繁琐的困扰。本文将带你通过五个清晰的阶段&#xff0c;轻松掌握OBS多平台直播的核心技术&#xff0c;让你的直播…

作者头像 李华