OJ 正则二叉树(使用递归)

2025华为OD机试真题最新题库 (B+C+D+E卷) + 在线OJ在线刷题使用说明(C++、Java、Python合集)(正在更新E卷,目前已收录581道) 2025华为OD机试真题最新题库 (B+C+D+E卷) + 在线OJ在线刷题使用说明(C++、Java、Python合集)(正在更新E卷,目前已收录581道) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2025e卷,od机试,2025E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od, 阅读详情

问题

给定一颗二叉查找树,其中结点上存储整数关键字,请你判断它是否一棵正则二叉树,即每个内部结点均有两个子结点。

输入

第一行是测试样例数 T(T <= 20),接下来是 T 个测试样例。对于每个测试样例,第一行是二叉树结点个数 n (n <= 30),第二行是一个含有n个关键字的序列,表示二叉树的先序遍历结果。保证关键字均不相同。

输出

如果二叉查找树是正则的,则输出“YES”, 否则输出”NO”,每个输出占一行。

输入样例

5
2
10 5
3
1 4 7
3 
5 3 2
3
10 4 23
5
10 6 5 8 20

输出样例

NO
NO
NO
YES
YES

思路

由于是先序遍历,一个整数串可以分为三部分:sub = [root, (left), (right)]
1. len(sub)==0,说明为叶子节点,返回true。
2. len(sub)%2==0,说明是偶数,必然不是正则的,返回false.
3. 其他情况,len(sub)必然是大于等于3的,可以用递归的思想,分别判断left区域和right区域是否正则。

代码


        
2025华为OD机试真题最新题库 (B+C+D+E+A卷) + 在线OJ在线刷题使用说明(C++、Java、Python合集)(正在更新A卷,目前已收录581道) 阅读详情

相关推荐

川大计算机复试机试怎么准备?LeetCode刷题攻略与现场OJ实战避坑指南

本文详细介绍了川大计算机复试机试的备考策略,包括LeetCode刷题攻略和现场OJ实战避坑指南。通过分析川大机试的题型分布和难度,提供高效的刷题方法和本地OJ环境搭建建议,帮助考生在有限时间内提升编程能力。重点涵盖动态规划、树图算法等核心考点,并分享考场应对策略与调试技巧,助力考生顺利通过机试。

weixin_29013129的博客 219

二叉树的性质

结点的度:结点的子树棵数。(二叉树中任意节点的度不大于2)。 叶结点:度为0的结点,或者称为终端节点。 分支结点:二叉树度不为0的结点,即二叉树中除了叶结点的所有结点。 树的深度:二叉树中所有结点的最大层号称为树的深度或者二叉树的高度。 满二叉树:所有的分支结点都存在左子树和右子树,并且所有叶子结点都在同一层上,则该二叉树称为满二叉树。 完全二叉树:对二叉树从上到下,从左

u013565071的博客 3409

2026华为OD机试(Python)真题【E卷+A卷+B卷+C卷+D卷】目录+在线OJ

华为OD机试真题题库【E卷+A卷+B卷+C卷+D卷】目录,Python实现。

MISAYAONE的博客 28万+

二叉树总结

二叉树 近期开始接触 二叉树 相关知识,特此根据现有知识对栈和队列做以小结,以下博客仅作为个人学习过程的小结,如能对各位博友有所帮助不胜荣幸。 本篇博客将简单介绍相关知识,以及其注意事项有哪些,只做本人小结,后期随学习深入再做补充修改。 一、树结构: 树形结构是一种非线性结构,不同于线性表,它是一层次的嵌套结构,因为其内外层结构相似,所以经常使用递归表示。其元素之间为一对多的关系,数状图是一种典型的树形结构。 如上图所示,就是一棵树,方向由上往下延伸 每一个圆圈叫做结点,最上面的结点(A)称为根结点,一个

相鱼南故 1329

关于二叉树

转载 skywang12345http://www.cnblogs.com/skywang12345/p/3576328.html 树的介绍 1. 树的定义 树是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。 把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点: (01) 每个节点有零个或多个子节点; (02) 没有父节点的节点称为根节点; (03) 每一个非根节点有且只有一个父节点; (04) 除了根节点外,每个子节点.

Tonyhnv的博客 1148

二叉树定义

二叉树定义(禁用‘满二叉树’说法): 1.完美二叉树:一颗二叉树中不存在空节点 (一棵深度为k且有2的k次方-1个结点的二叉树称为满二叉树) 2.完全二叉树:任一节点的左边必不存在空节点 3.正则二叉树:每个节点要么没有子节点要么满子节点 注:禁用‘满二叉树’ 1.国际定义:指的是正则二叉树 2.国内定义:指定是完美二叉树 ...

JQQ的博客 1850

数据结构学习记录2021.3.29

关于树的部分内容终于在今天基本上结束了,所以做一个对树的内容的相关纪录。 就树的内容来讲,基本上二叉树是占大部头的,所以在这一部分内容主要掌握了二叉树基本上也算是掌握了精髓。 话不多说,我们直接开始。 二叉树:每个结点最多含有两个子树的树。 二叉树又分为满二叉树和完全二叉树。当然还有一类特殊的二叉树正则二叉树。 满二叉树:所有的叶子结点都位于最后一层,且最后一层除外的所有其他结点的度数均为2。也就是说,所有除了叶子结点外的结点都拥有左右两个子树。 完全二叉树:扣除最后那一层后就是一棵满二叉树,且最后一层的

SWUSTZ的博客 958

【华为OD机试真题2025A卷】2025华为OD机试 A卷目录,三种语言解答,在线OJ刷题练习(已更700道)

2025年,已经开始使用A卷题库,题目和往期一样,旧题加新题的组合,有题目第一时间更新,大家可以跟着继续学习,目前使用复用题较多,可在OJ上直接找到对应的A卷学习一次订阅永久阅读,支持在线刷题,持续更新,有问题随时解答,本专栏题目数量已收录到600道。每篇文章的思路分析都非常详细,题目新增图解思路,问题解疑,多样例测试,超过百字的思路参考解析。

KJ.JK 3065

2024华为OD题库最新E卷题库,真题目录+考点说明+在线OJ刷题练习,最新、最准、最全的E卷题库(目前已收录570道)(持续更新)

华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2024e卷,od机试,2024E卷,华为OD机试E卷。

KJ.JK 3万+

2026华为OD机试(C++)真题【E卷+A卷+B卷+C卷+D卷】目录+在线OJ

华为OD机试真题题库【E卷+A卷+B卷+C卷+D卷】目录,C++实现。

MISAYAONE的博客 20万+

2026华为OD机试(JavaScript)真题【E卷+A卷+B卷+C卷+D卷】目录+在线OJ

华为OD机试真题题库【E卷+A卷+B卷+C卷+D卷】目录,JavaScript实现。

MISAYAONE的博客 8万+

2026华为OD机试(JAVA&Go)真题【E卷+A卷+B卷+C卷+D卷】目录+在线OJ

华为OD机试真题题库【E卷+A卷+B卷+C卷+D卷】目录,Java实现。

MISAYAONE的博客 34万+

剑指offer刷题总结

花了三天时间刷完了牛客OJ上剑指offer对应的66道算法题,感觉有一半都是做过的原题,还有一些是十分经典的算法题。因为好多算法题的思路在以前LeetCode博客上都详细讲过,剑指offer对应的博客就很简略,基本上直接上代码了。三天来把一些自认为很熟悉的快排和归并又重新码了一遍,感觉还是很难一把bugfree写对。递归和动态规划基本上写是没什么问题,暴力的递归还是很熟练的,但精巧的DP有时候就是...

To_be_thinking的博客 929

2026华为OD机考新系统真题 + 双机位C卷 + 往年真题 - 题库目录分值说明 + 考点说明+在线OJ

2026年4月1日起,华为OD机试正式切换至新系统模式!采用力扣模式,无需自己写输入! 难度大幅度降低。正在备考华为OD机试的同学,优先刷新系统机试真题,可大幅提升通过率。 新系统考题考点与旧版一致,无需重新适应。本专栏所有算法题均配有详细思路解析,并提供C语言、JS、C++、Python、Go、Java多语言源码实现。订阅后私信即可开通专属OJ刷题权限,高效备考一次上岸!

算法大师! 45万+

UVa OJ 题解索引

已完成:UVa 100 − UVa 619。

寂静山林 679

从浙江工商大学OJ平台出发:一份给前端开发者的算法入门实践指南

本文为前端开发者提供了一份基于浙江工商大学OJ平台的算法入门实践指南。通过结合前端开发实际场景,介绍如何利用OJ平台提升算法思维,优化代码性能。文章包含平台使用技巧、算法思维转换方法、推荐题目清单及调试心得,帮助开发者将算法应用于电商筛选、表单验证等业务场景。

weixin_30698297的博客 152
上一篇: OJ(while+cin.get()判断结束)
下一篇: 动态规划
Stark_JC
博客等级 码龄10年 13粉丝 50原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值