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

c++二叉树遍历

参考文献

数据结构c语言版,严蔚敏_吴伟民著。

二叉树

在这里插入图片描述

中序遍历代码实现

#include<vector>
#include<iostream>
using namespace std;//Definition for a binary tree node.
struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode() : val(0), left(nullptr), right(nullptr) {}TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}TreeNode(int x, TreeNode *left, TreeNode *right) : val(x),left(left), right(right) {}
};class Solution {
public:vector<int> inorderTraversal(TreeNode* root) {vector<int> ans;if (root == nullptr) return ans;if (root->left != nullptr) {vector<int> ansLeft = inorderTraversal(root->left);     for (auto item : ansLeft) {ans.push_back(item);}}ans.push_back(root->val);if (root->right != nullptr) {vector<int> ansRight = inorderTraversal(root->right);for (auto item : ansRight) {ans.push_back(item);}}return ans;}
};int main()
{Solution s;TreeNode root(1);TreeNode node2(2);TreeNode node3(3);TreeNode node4(4);TreeNode node5(5);TreeNode node6(6);TreeNode node7(7);TreeNode node8(8);TreeNode node9(9);TreeNode node10(10);TreeNode node11(11);root.left = &node2;root.right = &node3;node2.left = &node4;node2.right = &node5;node3.left = &node6;node3.right = &node7;node5.left = &node8;node5.right = &node9;node9.left = &node10;node9.right = &node11;vector<int> ans = s.inorderTraversal(&root);for (auto item : ans) {cout << item << " ";}cout << endl;return 0;
}

结果

在这里插入图片描述

http://www.lryc.cn/news/211672.html

相关文章:

  • day14_集合
  • 私有云:架构图
  • 在安装和配置DVWA渗透测试环境遇到的报错问题
  • 深度学习_2 数据操作
  • win 下安装 nvm 的使用与配置
  • Git笔记
  • 省钱兄共享茶室共享娱乐室小程序都有哪些功能
  • vue-cli方式创建vue3工程
  • 四、W5100S/W5500+RP2040树莓派Pico<TCP Server数据回环测试>
  • 技术视角下的跑腿小程序开发:关键挑战和解决方案
  • Mysql进阶-索引篇(下)
  • 从龙湖智创生活入选金钥匙联盟,透视物业服务力竞争风向
  • 什么是 CNN? 卷积神经网络? 怎么用 CNN 进行分类?(2)
  • 样式迁移 - Style Transfer
  • UE5.3启动C++项目报错崩溃
  • C/S架构和B/S架构
  • 【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS
  • 开关电源测试方案分享:电源纹波及噪声测试方法、测试标准
  • git的使用——如何创建.gitignore文件,排除target、.idea文件夹的提交
  • react-antd组件 input输入框: 实现按回车搜索
  • python_PyQt5日周月K线纵向对齐显示_1_数据处理
  • leetcode经典面试150题---4.删除有序数组中的重复项II
  • Transformer英语-法语机器翻译实例
  • 21.12 Python 实现网站服务器
  • Leetcode.274 H 指数
  • 订单BOM放哪儿?(我的APS项目二)
  • 从0到1之微信小程序快速入门(03)
  • 【面试高高手】—— docker面试题
  • mac电脑怎么永久性彻底删除文件?
  • MySQL(2):环境搭建