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

网站建设程序制作广州机械网站建设外包

网站建设程序制作,广州机械网站建设外包,逐鹿网站建设,赣州网站推广多少钱文章目录 二叉树的前序遍历二叉树的中序遍历二叉树的后序遍历 二叉树的前序遍历 题目链接&#xff1a;二叉树的前序遍历 解题思路1&#xff1a;递归 代码如下&#xff1a; void preorder(vector<int>& res, TreeNode* root){if(root nullptr) return;//遇到空节点…

文章目录

  • 二叉树的前序遍历
  • 二叉树的中序遍历
  • 二叉树的后序遍历

二叉树的前序遍历

题目链接:二叉树的前序遍历

解题思路1:递归

代码如下:

    void preorder(vector<int>& res, TreeNode* root){if(root == nullptr) return;//遇到空节点就返回res.push_back(root->val);//先遍历根节点preorder(res, root->left);//再遍历左子树preorder(res, root->right);//最后遍历右子树}vector<int> preorderTraversal(TreeNode* root) {vector<int> res;preorder(res, root);return res;}

解题思路2:辅助栈

代码如下:

    vector<int> preorderTraversal(TreeNode* root) {vector<int> res;if(root == nullptr) return res;stack<TreeNode*> s;s.push(root);while(!s.empty()){TreeNode* cur = s.top();res.push_back(cur->val);s.pop();if(cur->right) s.push(cur->right);if(cur->left) s.push(cur->left);}return res;}

二叉树的中序遍历

题目链接:二叉树的中序遍历

解题思路1:递归

代码如下:

    void inorder(vector<int>& res, TreeNode* root){if(root == nullptr) return;inorder(res, root->left);res.push_back(root->val);inorder(res, root->right);}vector<int> inorderTraversal(TreeNode* root) {vector<int> res;inorder(res, root);return res;}

解题思路2:辅助栈

代码如下:

    vector<int> inorderTraversal(TreeNode* root) {vector<int> res;stack<TreeNode*> s;while(root!=nullptr || !s.empty()){//每次找到最左节点while(root != nullptr){s.push(root);root = root->left;}//访问该节点TreeNode* cur = s.top();res.push_back(cur->val);s.pop();//进入右节点root = cur->right;}return res;}

二叉树的后序遍历

题目链接:二叉树的后序遍历

解题思路1:递归

代码如下:

    void postorder(vector<int>& res, TreeNode* root) {if (root == nullptr) return;postorder(res, root->left);postorder(res, root->right);res.push_back(root->val);}vector<int> postorderTraversal(TreeNode* root) {vector<int> res;postorder(res, root);return res;}

解题思路2:辅助栈

代码如下:

    vector<int> postorderTraversal(TreeNode* root) {vector<int> res;stack<TreeNode*> s;TreeNode* pre = nullptr;while(root!=nullptr || !s.empty()){//找到最左边的节点while(root != nullptr){s.push(root);root = root->left;}TreeNode* cur = s.top();s.pop();if(cur->right==nullptr || cur->right == pre){res.push_back(cur->val);pre = cur;}else{s.push(cur);root = cur->right;}}return res;}
http://www.yayakq.cn/news/447778/

相关文章:

  • 西宁北京网站建设网页历史记录保存天数
  • 网站开发不兼容ie8wordpress 扁擔
  • 网站建设方案概述新手如何建网站
  • 常州高端模板建站响应式网站首页
  • 广州白云区做网站云南网际科技有限公司
  • 太原建站模板搭建广告推广语
  • 自己做婚恋网站wordpress创意小工具
  • 南昌做网站软件公司管理系统的好处
  • 如何做单位网站设计中国飞机的第一架飞机的人是谁
  • 免费建站的网站哪个好注册1000万公司需要多少钱
  • 自己做的网站显示不出来企业宣传册模板文案
  • 友情链接是什么意思无锡网站推广优化
  • 音乐网站建设费用做外贸建网站
  • 网站营销体系的建设及运营情况网站建设费会计科目
  • 电子商务网站建设实训个人总结外贸网站建设教程
  • 网站架构设计师全屋设计装修效果图
  • 宿迁网站建设费用免费的微网站制作
  • 群晖如何做网站服务器wordpress代刷网主题
  • 开发网站开票写什么html5网站开发开题报告
  • 江苏建设教育网官网入口优化推广什么意思
  • 凤岗建设网站想做个网站怎么做
  • 免费做网站. 优帮云1688一件代发详细步骤
  • 怎么做免费网站如何让百度收录电商平台入驻条件
  • 北京集团网站建设公司网站黑链检测
  • 有域名了怎么建设网站中国品牌100强排名
  • 网站开发项目管理步骤wordpress二维码
  • 抖音粉丝购买网站互联网营销师报考
  • 网站必须做百度推广才能被别人搜到吗wangz网站建设
  • 漳州市网站建设南宁网站建设nayuwang
  • 网站如何做水晶按钮邯郸在哪个省