当前位置:网站首页>二叉树是否对称
二叉树是否对称
2022-08-04 19:37:00 【-JMY-】
题目描述
假设一棵二叉树中每个结点的两棵子树都是空,或者都不为空,我们称该二叉树是对称二叉树。
给定一棵二叉树的字符串表示的结果,请编程判断,该二叉树是否是对称二叉树。
例如:下图所示的两棵二叉树中,T1是对称二叉树,T2不是对称二叉树。
二叉树用顺序结构给出,若读到#则该结点为空,二叉树T1=ABCDE,T2=ABCD#E,如果二叉树是对称的,输出“Yes”,反之输出“No”。

输入
一行字符串,表示二叉树的顺序存储序列,用字符#代表空结点,长度不大于1000。
输出
如果二叉树是对称的,输出“Yes”,反之输出“No”。
样例输入
ABCDE
样例输出
Yes 参考代码:
#include<bits/stdc++.h>
using namespace std;
int a[1005];
string s;
bool f(int x){
if(a[x*2]==0&&a[x*2+1]==0)
return true;
else if(a[x*2]!=0&&a[x*2+1]!=0)
return f(x*2) && f(x*2+1);
else
return false;
}
int main(){
cin>>s;
for(int i=0;i<s.size();i++)
if(s[i]!='#')
a[i+1]=1;
if(f(1))
cout<<"Yes";
else
cout<<"No";
return 0;
}
边栏推荐
- Infrared image filtering
- 入门:人脸专集1 | 级联卷积神经网络用于人脸检测(文末福利)
- Polygon zkEVM 基本概念
- 性能测试流程
- seata源码解析:seata server各种消息处理流程
- Finger Vein Recognition-matlab
- How to manually download and install SAP Fiori tools - Extension Pack for Visual Studio Code
- Yuanguo chain game system development
- 如何给MySQL添加自定义语法 ?
- How to promote the implementation of rural revitalization
猜你喜欢
随机推荐
June To -.-- -..- -
c sqlite...
Regular expression is incomplete
T+Cloud:构建新型生意社交网络和营销关系的“智公司”
性能测试流程
The Development and Current Situation of Object Detection
seata源码解析:seata server各种消息处理流程
【着色器实现Glitch单项故障闪烁效果(与Television效果不同)_Shader效果第十四篇】
元国度链游系统开发
使用.NET简单实现一个Redis的高性能克隆版(二)
成品升级程序
前3名突然变了,揭秘 7 月编程语言最新排行榜
zynq records
NLP技术为何在工业界这么卷?前沿案例解析来了
To -.-- -..- -
【Attention演变史】翻译模型seq2seq (第二弹)
Notepad++更改显示背景
Chrome 开发者工具 performance 标签页的用法
百度智能云重庆工业互联网平台正式亮相,深耕重庆,辐射西南
目标检测的发展与现状









