NOIP2018第四题--对称二叉树题解

本文详细解析了NOIP2018第四题的递归解法,针对如何判断对称二叉树进行了深入讲解,包括读入数据、寻找递归入口以及递归判断对称性的关键步骤。通过避免无效递归和利用对称性,优化了算法效率。
摘要由CSDN通过智能技术生成

洛谷链接

题目类型:递归水题

事实证明:第四题的位置只是个障眼法

思路细讲:

(1)读入数据

注意用scanf,要不然10^6的大数据完全会爆。

(2)寻找递归入口

在寻找时要满足三个条件才能递归:
(1)有左儿子
(2)有右儿子
(3)两个儿子的值相同
这样能滤掉大部分无用的递归,加快了时间

(3)第一遍递归判断以i为根的二叉树是否为对称二叉树

这个地方是本题的难点。
很多人的递归方式是这样(一开始我也是这样):

就是从一个父亲直接来看两个儿子是否OK(有(值相同)或没有两个儿子);
但这样做有个重大弊端,如下图你就嗝屁了:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值