6-1 二叉排序树查找操作
description
本题要求实现二叉排序树的查找操作。
函数接口定义:
BSTree SearchBST(BSTree T,ElemType e);
其中BSTree结构定义如下:
typedef int ElemType;
typedef struct BSTNode
{
ElemType data;
struct BSTNode *lchild,*rchild;
}BSTNode,*BSTree;
裁判测试程序样例:
#include <stdio.h>
#include <stdlib.h>
typedef int ElemType;
typedef struct BSTNode
{
ElemType data;
struct BSTNode *lchild,*rchild;
}BSTNode,BSTree;
BSTree CreateBST();/ 二叉排序树创建,由裁判实现,细节不表 /
BSTree SearchBST(BSTree T,ElemType e);
void Inorder(BSTree T);/ 中序遍历,由裁判实现,细节不表 */
int main()
{
BSTree T,result;
ElemType n,e;
T = CreateBST();
printf(“Inorder:”); Inorder(T); printf(“\n”);
scanf(“%d”,&n);
for(int i=0;i<n;i++)
{
scanf(“%d”,&e);
result = SearchBST(T,e);
if(result) printf(“%d is found\n”,result->data);
else printf(“%d is not found\n”,e);
}
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例:
输入第一行以-1结束的整数,为二叉排序树中元素初始序列,第二行为一个整数n,代表要查询的元素个数,第三行为n个整数,代表要查询的元素值。
例如创建如下二叉排序树,输入为:
二叉排序树.png
4 3 5 1 2 7 6 8 -1
4
1 8 0 9
输出样例:
Inorder: 1 2 3 4 5 6 7 8
1 is found
8 is found
0 is not found
9 is not found
solution
BSTree SearchBST(BSTree T,ElemType e){if(!T || e == T->data) return T;else if(e < T-> data)SearchBST(T->lchild, e);else SearchBST(T->rchild, e);
}
相关文章:
6-1 二叉排序树查找操作
description 本题要求实现二叉排序树的查找操作。 函数接口定义: BSTree SearchBST(BSTree T,ElemType e); 其中BSTree结构定义如下: typedef int ElemType; typedef struct BSTNode { ElemType data; struct BSTNode *lchild,*rchild; }BSTNode,*BS…...
服务上千家企业,矩阵通2.0重磅上线,全链路管理新媒体矩阵
自上线以来 矩阵通已服务了上千家企业级客户 覆盖汽车、家居、媒体、金融、教育等多个行业 矩阵通1.0时代 我们以“数据”为基座打造出10功能 帮助企业轻松管理新媒体矩阵 实现账号管理、数据分析、竞对监测、 人员考核、风险监管等需求 而现在 矩阵通2.0重磅上线 新增…...
【代码随想录】算法训练计划11
1、20. 有效的括号 题目: 给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号…...
Jmeter之JSR223
一、JSR223组件 JSR是Java Specification Requests的缩写,意思是Java规范提案。JSR已成为Java界的一个重要标准. JSR223其实包含了有好几种组件,但是其用法都是一致的,并且都是执行一段代码,主要分类如下: JSR223 PreProcessor JSR223 Timer JSR223 S…...
c++23中的新功能之十八新增的属性
一、c23新的属性 在前面的分析中说过,各种语言的发展整体思路是一致的,即朝着更加实用、简单和更接近自然语言的方向在前进。c23中也在不断的完善和增加相关开发的一些属性和预编译处理指令,这样就可以让开发者在开发的过程中对程序进行控制…...
动手学深度学习:1.线性回归从0开始实现
动手学深度学习:1.线性回归从0开始实现 1.手动构造数据集2.小批量读取数据集3.初始化模型参数4.定义模型和损失函数5.小批量随机梯度下降更新6.训练完整代码 1.手动构造数据集 根据带有噪声的线性模型构造一个人造数据集,任务是使用这个有限样本的数据集…...
【计算机网络】应用层
应用层协议原理 客户-服务器体系结构: 特点:客户之间不能直接通信;服务器具有周知的,固定的地址,该地址称为IP地址。 配备大量主机的数据中心常被用于创建强大的虚拟服务器;P2P体系结构: 特点&…...
python 深度学习 解决遇到的报错问题9
本篇继python 深度学习 解决遇到的报错问题8-CSDN博客 目录 一、can only concatenate str (not "int") to str 二、cant convert np.ndarray of type numpy.object_. The only supported types are: float64, float32, float16, complex64, complex128, int64, in…...
能源管理系统为什么选择零代码开发平台?
市面上有很多能源管理系统,但是零代码开发能源管理系统却非常少。那为什么推荐选择零代码开发平台呢?因为很多企业缺少技术人员,但是却仍然需要数字化工具和流程推进业务和项目,解决能源管理技术人员不懂代码的矛盾问题࿰…...
【LeetCode】剑指 Offer Ⅱ 第8章:树(12道题) -- Java Version
题库链接:https://leetcode.cn/problem-list/e8X3pBZi/ 类型题目解决方案二叉树的深搜剑指 Offer II 047. 二叉树剪枝递归(深搜):二叉树的后序遍历 (⭐)剑指 Offer II 048. 序列化和反序列化二叉树递归&…...
利用maven的dependency插件将项目依赖从maven仓库中拷贝到一个指定的位置
https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html 利用dependency:copy-dependencies可以将项目的依赖从maven仓库中拷贝到一个指定的位置。 使用默认配置拷贝依赖 如果直接执行mvn dependency:copy-dependencies,是将项目…...
在Flask中实现文件上传七牛云中并下载
在Flask中实现文件上传和七牛云集成 文件上传是Web应用中常见的功能之一,而七牛云则提供了强大的云存储服务,使得文件存储和管理变得更加便捷。在本篇博客中,我们将学习如何在Flask应用中实现文件上传,并将上传的文件保存到七牛云…...
【Linux】centOS7安装配置及Linux的常用命令---超详细
一,centOS 1.1 centOS的概念 CentOS(Community Enterprise Operating System)是一个由社区支持的企业级操作系统,它是以Red Hat Enterprise Linux(RHEL)源代码为基础构建的。CentOS提供了一个稳定、可靠且…...
【ES专题】ElasticSearch搜索进阶
目录 前言阅读导航前置知识特别提醒笔记正文一、分词器详解1.1 基本概念1.2 分词发生的时期1.3 分词器的组成1.3.1 切词器:Tokenizer1.3.2 词项过滤器:Token Filter1.3.3 字符过滤器:Character Filter 1.4 倒排索引的数据结构 <font color…...
【iOS免越狱】利用IOS自动化WebDriverAgent实现自动直播间自动输入
1.目标 由于看直播的时候主播叫我发 666,支持他,我肯定支持他呀,就一直发,可是后来发现太浪费时间了,能不能做一个直播间自动发 666 呢?于是就开始下面的操作。 2.操作环境 iPhone一台 WebDriverAgent …...
Python基础入门例程28-NP28 密码游戏(列表)
最近的博文: Python基础入门例程27-NP27 朋友们的喜好(列表)-CSDN博客 Python基础入门例程26-NP26 牛牛的反转列表(列表)-CSDN博客 Python基础入门例程25-NP25 有序的列表(列表)-CSDN博客 目录…...
乌班图 Linux 系统 Ubuntu 23.10.1 发布更新镜像
Ubuntu 团队在其官网上发布了Ubuntu 23.10.1 版本,这是目前较新的 Ubuntu 23.10(Focal Fossa)操作系统系列的第一个发行版,旨在为社区提供最新的安装媒体。Ubuntu 22.04 LTS(Focal Fossa)操作系统系列于 2022 年 4 月 21 日发布。 Ubuntu 23.10 LTS(长期支持版本)可用…...
Java金字塔、空心金字塔、空心菱形
Java金字塔 public class TestDemo01 {public static void main(String[] args){//第一个for用于每行输出 从i1开始到i<5,总共5行for(int i1;i<5;i){//每行前缀空格,这个for用于表示每行输出*前面的空格//从上面规律可得,每行输出的空格数为总层数,…...
前端 | (十四)canvas基本用法 | 尚硅谷前端HTML5教程(html5入门经典)
文章目录 📚canvas基本用法🐇什么是canvas(画布)🐇替换内容🐇canvas标签的两个属性🐇渲染上下文 📚绘制矩形🐇绘制矩形🐇strokeRect时,边框像素渲染问题🐇添加…...
206.反转链表
206.反转链表 力扣题目链接(opens new window) 题意:反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 双双指针法: 创建三个节点 pre(反转时的第一个节点)、cur(当前指向需要反转的节点…...
力扣17,电话号码的字母组合
class Solution { public: //设置一个map,用来数字与字母比对unordered_map<char, string> _mp{{2,"abc"},{3,"def"},{4,"ghi"},{5,"jkl"},{6,"mno"},{7,"pqrs"},{8,"tuv"},{9,"…...
5分钟快速上手NewGAN-Manager:为足球经理打造个性化脸型包
5分钟快速上手NewGAN-Manager:为足球经理打造个性化脸型包 【免费下载链接】NewGAN-Manager A tool to generate and manage xml configs for the Newgen Facepack. 项目地址: https://gitcode.com/gh_mirrors/ne/NewGAN-Manager NewGAN-Manager 是一款专门为…...
全志V853开发板适配7寸RGB屏:Linux DRM驱动与设备树配置实战
1. 项目概述与核心价值最近在折腾百问网的100ASK_V853-PRO开发板,这块板子用的是全志V853这颗高性能的AIoT芯片,本身接口资源挺丰富的。但官方默认的配套屏幕是5寸或者更小的MIPI屏,对于很多需要大屏交互的应用场景,比如智能中控、…...
TC2526 低功耗原边反馈开关电源芯片
概述 TC2526 是一款低功耗原边反馈(PSR)开关电源芯片,其内部集成了大功率 BJT 管,适用于隔离型的高效低功耗便携式设备充电器应用。TC2526 采用独特具有恒流恒压功能的原边反馈控制技术,以及独特的轻载调频技术降低轻载…...
用Obsidian+Templater插件打造你的专属日记系统:从脚本编写到自动归档
用ObsidianTemplater打造全自动日记管理系统:从脚本开发到智能归档 在数字时代,个人知识管理已成为现代人的必修课。当大多数日记应用将你的私人记忆锁在云端服务器时,一种更自主、更灵活的选择正在技术爱好者中流行——用Obsidian配合Templa…...
别再手动复制粘贴了!C++20 assign函数让你的容器操作效率翻倍(附vector/deque实战代码)
C20 assign函数:告别低效循环,解锁现代容器操作新范式 在C日常开发中,容器操作占据了大量编码时间。你是否还在为以下场景烦恼:需要将一个vector的部分元素复制到另一个容器时,不得不写冗长的循环;当要重置…...
抖音批量下载神器:一键保存多个创作者的所有视频作品
抖音批量下载神器:一键保存多个创作者的所有视频作品 【免费下载链接】douyinhelper 抖音批量下载助手 项目地址: https://gitcode.com/gh_mirrors/do/douyinhelper 在当前短视频内容爆炸的时代,抖音汇聚了无数创意视频和优质内容。无论是学习舞蹈…...
国产多模态大模型:产业协同全景与实战指南
国产多模态大模型:产业协同全景与实战指南 引言 在人工智能浪潮席卷全球的背景下,国产多模态大模型正从技术探索迈向广泛的产业协同应用。与只能处理文本或图像的单一模态模型相比,多模态大模型能同时理解、关联和生成文本、图像、音频、视频…...
CLI工具集claw:模块化设计与插件化架构深度解析
1. 项目概述:一个面向开发者的现代化CLI工具集最近在GitHub上看到一个名为opsyhq/claw的项目,第一眼就被它简洁的名字吸引了。claw,中文意思是“爪子”,听起来就很有力量感和抓取感。点进去一看,果然,这是一…...
Discourse Docker持续集成:自动化构建与部署完整指南 [特殊字符]
Discourse Docker持续集成:自动化构建与部署完整指南 🚀 【免费下载链接】discourse_docker A Docker image for Discourse 项目地址: https://gitcode.com/gh_mirrors/dis/discourse_docker Discourse Docker持续集成是现代论坛部署的最佳实践&a…...
