ZKX's LAB

判断一棵二叉树是否镜像对称 如何去面试软件测试工程师?

2021-04-25知识7

判断一棵二叉树是不是镜像对称的二叉树 可以递归求解左右子树高度之差,只要这个差在0,1,-1就是平衡的二叉树

C++求助!! 费了好大力气试试 感觉好用的话就采纳吧愿意加分的话我更开心 嘿嘿基本思想根据输入创建二叉树把其中一个子树(程序中用的是左子树)做镜像,即每个子树的左右子树互换比较左右子树 如相同则为轴对称代码如下includeincludeincludeincludeusing namespace std;templateclass btree{public:btree*left,*right;T v;btree():left(NULL),right(NULL),v(){}btree(){if(left)delete left;if(right)delete right;}bool operator=(const btree<;T>;&a)const{bool l,r;if(a.v。v){return false;}l=a.left=left|(a.left&left&*a.left=*left);r=a.right=right|(a.right&right&*a.right=*right);return l&r;}bool check(){if(left=right)return true;if(left&right)return*left=*right;return false;}void mirror(){btree*t;t=left;left=right;right=t;if(left)left->;mirror();if(right)right->;mirror();}};btree*create(char*&s){char*start=s;bool flag=false;while(*s。'('&*s。')'&*s。','&*s)s+;if(s=start)return NULL;btree*r=new btree;char a=*s;s=0;r->;v=start;s=a;r->;left=r->;right=NULL;while(*s){if(*s='('){s+;r->;left=create(s);flag。

完全二叉树的疑问 你是怎么翻转?镜像翻转还是中心翻转?镜像翻转:不是完全二叉树,因为不满足定义“并且最下面一层的结点都集中在该层最左边的若干位置上”中心翻转:是完全二叉树,满足定义。严格定义就是在画出的图形中,右孩子在左孩子右边…

#判断二叉树的镜像对称python#判断一棵二叉树是否镜像对称

随机阅读

qrcode
访问手机版