新闻详情

新闻详情

首页 / 资讯中心 / 详情

AcWing 3595:二叉排序树 ← vector

发布时间:2026/9/7 22:03:40来源:尧图网络
AcWing 3595:二叉排序树 ← vector
【题目来源】https://www.acwing.com/problem/content/3598/【题目描述】二叉排序树也称为二叉查找树。可以是一颗空树也可以是一颗具有如下特性的非空二叉树1.若左子树非空则左子树上所有节点关键字值均不大于根节点的关键字值2.若右子树非空则右子树上所有节点关键字值均不小于根节点的关键字值3.左、右子树本身也是一颗二叉排序树。现在给你 N 个关键字值各不相同的节点。要求你将这些节点按顺序插入一个初始为空树的二叉排序树中。每次成功插入一个节点后求其相应的父亲节点的关键字值如果没有父亲节点则输出 −1。【输入格式】第一行包含整数 N表示待插入的节点数。第二行包含 N 个互不相同的正整数表示要顺序插入节点的关键字值。【输出格式】N 行。【输入样例】52 5 1 3 4【输出样例】-12253【数据范围】1≤N≤100节点关键字值取值范围 [1,10^8]。【算法分析】● 二叉排序树Binary Sort TreeBST又称二叉搜索树。二叉排序树或者是一棵空树或者是具有下列性质的二叉树。1若它的左子树不空则左子树上所有结点的值均小于它的根结点的值2若它的右子树不空则右子树上所有结点的值均大于它的根结点的值3它的左、右子树也分别为二叉排序树。● 二叉排序树遵循“左小右大”规则树中没有相同关键字的结点。● 中序遍历一棵二叉排序树可以得到一个结点值递增的有序序列。● 东方博宜OJ 2195二叉排序树https://blog.csdn.net/hnjzsyjyj/article/details/164402681【算法代码】#include bits/stdc.h using namespace std; const int N105; int val[N]; vectorint g[N]; int tot0; int get_idx(int x) { tot; val[tot]x; g[tot].push_back(0); //Set left child to 0 g[tot].push_back(0); //Set right child to 0 return tot; } int insert(int u,int x) { if(u0) { uget_idx(x); return -1; } int ch(xval[u])?g[u][0]:g[u][1]; if(ch0) { chget_idx(x); return val[u]; } else insert(ch,x); } int main() { int n,x,root0; cinn; for(int i1; in; i) { cinx; coutinsert(root,x)endl; } return 0; } /* in: 5 2 5 1 3 4 out: -1 2 2 5 3 */【参考文献】https://blog.csdn.net/hnjzsyjyj/article/details/163743086https://blog.csdn.net/hnjzsyjyj/article/details/154818899
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

RIS辅助MIMO通信容量优化:全矩阵算法与Matlab实现 2026/9/7 23:40:00

RIS辅助MIMO通信容量优化:全矩阵算法与Matlab实现

1. 项目概述:RIS辅助MIMO通信的容量优化在5G/6G通信研究中,可重构智能表面(RIS)与多输入多输出(MIMO)技术的结合正成为突破传统信道容量极限的关键路径。这个Matlab复现项目源自2023年IEEE Transactions on Wireless Communications的一篇前沿论文&#…

阅读更多 →
防混料实战:从物理防错到数字化扫码,彻底杜绝生产物料混淆 2026/9/7 23:40:00

防混料实战:从物理防错到数字化扫码,彻底杜绝生产物料混淆

简介:面向质量管理、生产管理与库存控制场景的《预防混料管理办法20250624》,是一份用于规范原物料、半成品及成品管理、预防错混料现象的实用文件。内容依次说明目的、适用范围、错混料定义、各部门职责及具体管理要求,覆盖工艺文件、业务接…

阅读更多 →
LabelImg目标检测标注工具安装与使用全攻略,从标注规范到避坑指南 2026/9/7 23:40:00

LabelImg目标检测标注工具安装与使用全攻略,从标注规范到避坑指南

简介:LabelImg是目标检测领域常用的图像标注工具,这份PDF教程面向机器学习初学者与目标检测开发者,系统讲解其安装、界面操作、快捷键与两种标注格式。教程覆盖pip安装命令、自动保存模式、标注流程,并分别展示VOC与YOLO格式的生成…

阅读更多 →
NetApp FAS8300部署指南:从硬件上架到ONTAP配置与验收 2026/9/7 23:40:00

NetApp FAS8300部署指南:从硬件上架到ONTAP配置与验收

简介:NetApp FAS8300存储安装手册是一份面向存储运维工程师、系统管理员及NetApp初学者的PDF文档,重点解决FAS8300设备从初始化到业务上线过程中的配置问题。手册以安装实施报告形式展开,目录涵盖设备配置信息、初始化集群配置、系统详细配置…

阅读更多 →
基于Spring+MySQL的校友网交流平台毕业设计完整实战 2026/9/7 23:40:00

基于Spring+MySQL的校友网交流平台毕业设计完整实战

这是一篇毕业设计相关的经验分享,内容围绕一个基于SpringMySQL的校友网交流平台的完整设计与实现过程展开,从选题、技术选型、数据库设计到代码落地、部署答辩,给出可直接参考的完整思路,希望能帮到正在做同类项目的同学。完整源码…

阅读更多 →
决策树预剪枝原理与实现:从过拟合到泛化 2026/9/7 23:37:00

决策树预剪枝原理与实现:从过拟合到泛化

决策树预剪枝,这东西看着简单,真正自己动手实现一遍才会发现里面的门道远比想象的要多。 刚开始学机器学习的时候,我踩过不少坑。最典型的一次是拿 sklearn 里的 DecisionTreeClassifier 直接训练,不设任何参数,训…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞