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

翻转二叉树

226. 翻转二叉树

给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。

示例 1:

输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]

示例 2:

输入:root = [2,1,3]
输出:[2,3,1]

示例 3:

输入:root = []
输出:[]

方法一。深度优先遍历(前序遍历)

class Solution {
public:TreeNode* invertTree(TreeNode* root) {if(root==NULL) return(root);stack<TreeNode*>st;st.push(root);while(!st.empty()){TreeNode*node=st.top();st.pop();swap(node->left,node->right);if(node->right) st.push(node->right);if(node->left) st.push(node->left);}return root;}
};
class Solution {
public:TreeNode* invertTree(TreeNode* root) {stack<TreeNode*>st; if(root!=NULL)st.push(root);while(!st.empty()){TreeNode*node=st.top();if(node!=NULL){st.pop();if(node->right) st.push(node->right);if(node->left) st.push(node->left);st.push(node);st.push(NULL);}else{st.pop();node=st.top();st.pop();swap(node->left,node->right);}}return root;}
};

方法二:广度优先遍历(层序遍历)

class Solution {
public:TreeNode* invertTree(TreeNode* root) {queue<TreeNode*>que; if(root!=NULL)que.push(root);while(!que.empty()){int size=que.size();for(int i=0;i<size;i++){TreeNode*node=que.front();que.pop();swap(node->left,node->right);if(node->right) que.push(node->right);if(node->left) que.push(node->left);}}return root;}
};

栈是先入后出的。队列可以保存原有顺序。

相关文章:

  • 【基于STM32的新能源汽车智能循迹系统开发全解析】
  • React---day2
  • 软件同步机制-Peterson解决方案 简单讲解
  • day38 python Dataset和Dataloader
  • SSM整合:Spring+SpringMVC+MyBatis完美融合实战指南
  • 基于大模型的慢性胃炎全周期预测与诊疗方案研究报告
  • 【Quest开发】空间音频的使用
  • 异常:UnsupportedOperationException: null
  • 【运维_日常报错解决方案_docker系列】一、docker系统不起来
  • OpenCV CUDA模块图像处理------颜色空间处理之用于执行伽马校正(Gamma Correction)函数gammaCorrection()
  • OpenCV CUDA模块图像处理------颜色空间处理之GPU 上对两张带有 Alpha 通道的图像进行合成操作函数alphaComp()
  • 传统数据表设计与Prompt驱动设计的范式对比:以NBA投篮数据表为例
  • 【请关注】VC++ MFC常见异常问题及处理方法
  • 【LeetCode 热题 100】打家劫舍 / 零钱兑换 / 单词拆分 / 乘积最大子数组 / 最长有效括号
  • react基础技术栈
  • [React]实现一个类zustand公共状态库
  • Nginx 性能优化全解析:从进程到安全的深度实践
  • HJ25 数据分类处理【牛客网】
  • 【前端】【React】React性能优化系统总结
  • 嵌入式学习--江协stm32day1
  • 哈尔滨建设网站公司吗/网络营销实训个人总结
  • 为女人网上量体做衣网站/合肥网站推广优化
  • 百度怎么做网站域名/互联网营销是什么意思
  • 如何建设国际网站首页/头条今日头条新闻
  • 如何自己做加盟网站/网站seo排名免费咨询
  • 定制高端网站/电商具体是做什么的