news 2026/6/11 19:55:07

DS二叉排序树之创建和插入

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DS二叉排序树之创建和插入

题目描述

给出一个数据序列,建立二叉排序树,并实现插入功能。

在建立和插入操作后,都输出二叉树的先序遍历结果i

输入

第1行输入n,表示序列包含n个数据

第2行输入n个数据,都是自然数且互不相同,数据之间用空格隔开

第3行输入m,表示要插入m个数据

输入m行,每行一个要插入的数据,都是自然数且和前面的数据不等

输出

第一行输出一开始构建的二叉排序树的先序遍历结果

从第二行起,输出m行,每行输出插入一个数据到二叉排序树后的先序遍历结果

每行输出的遍历结果中,每个数据后面都带一个空格,最后一个数据也带。

IO模式

本题IO模式为标准输入/输出(Standard IO),你需要从标准输入流中读入数据,并将答案输出至标准输出流中。

输入样例:

6 22 33 55 66 11 44 3 77 50 10

输出样例:

22 11 33 55 44 66 22 11 33 55 44 66 77 22 11 33 55 44 50 66 77 22 11 10 33 55 44 50 66 77

代码实现:

#include <format> #include<iostream> using namespace std; class BST { private: struct TreeNode { int val; TreeNode *left,*right; TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} }; TreeNode* root; TreeNode* insertNode(TreeNode* node,int val) { if (node==nullptr)return new TreeNode(val); if (val<node->val)node->left=insertNode(node->left,val); else node->right=insertNode(node->right,val); return node; } void preOrder(TreeNode* node) { if (node==nullptr)return; cout<<node->val<<" "; preOrder(node->left); preOrder(node->right); } public: BST() : root(nullptr) {} void insert(int val) { root=insertNode(root,val); } void preOrderTraversal() { preOrder(root); } }; int main() { int n;cin>>n; BST bst; for (int i=0;i<n;i++) { int val;cin>>val; bst.insert(val); } bst.preOrderTraversal(); cout<<endl; int m;cin>>m; for (int i=0;i<m;i++) { int val;cin>>val; bst.insert(val); bst.preOrderTraversal(); cout<<endl; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/11 5:04:36

企业档案管理系统:项目档案管理如何为决策提供“数据支撑”

目录 一、夯实数据基础&#xff1a;项目档案管理是决策数据的 “源头活水” 1.1 全流程数据采集&#xff0c;覆盖决策关键维度 1.2 标准化存储管理&#xff0c;保障数据真实可追溯 二、激活数据价值&#xff1a;档案管理系统的 “分析赋能” 2.1 多维度数据整合&#xff0c;打破…

作者头像 李华
网站建设 2026/6/10 12:43:39

AI助力Spring开发:自动生成RESTful API代码

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 使用Spring Boot框架创建一个用户管理系统的RESTful API&#xff0c;包含以下功能&#xff1a;1.用户注册登录(JWT认证) 2.用户CRUD操作 3.分页查询 4.数据校验 5.Swagger接口文档。…

作者头像 李华
网站建设 2026/6/10 2:25:11

CVE-2023-51767漏洞深度解析:原理与影响

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 生成一个详细的CVE-2023-51767漏洞分析报告&#xff0c;包括漏洞类型、受影响系统、攻击场景、漏洞利用代码示例&#xff08;PoC&#xff09;以及缓解措施。报告应使用Markdown格式…

作者头像 李华
网站建设 2026/6/11 6:47:55

电商推荐系统中的神经网络参数优化实践

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个电商推荐系统的神经网络参数优化项目。要求&#xff1a;1) 基于用户历史行为数据构建推荐模型&#xff1b;2) 实现参数自动调优功能&#xff0c;包括embedding维度、隐藏层…

作者头像 李华
网站建设 2026/6/10 12:51:06

为什么越来越多材料开始用稀土?

提到“稀土”&#xff0c;很多人第一反应是高科技、战略资源&#xff0c;似乎离日常生活很远。但事实上&#xff0c;稀土早已悄悄走进了我们身边&#xff0c;只是以一种不显眼的方式存在着。在材料领域&#xff0c;稀土并不是用来“当主角”的。它更像是一种调节器&#xff0c;…

作者头像 李华