SDUTOJ 2804求二叉树的深度
二叉树 深度
2023-09-11 14:20:59 时间
#include<iostream> #include<stdlib.h> #include<string.h> using namespace std; char s1[100],s2[100]; typedef struct BiTNode { char data; struct BiTNode *lchild,*rchild; }BiTNode,*BiTree; void build(BiTree &T,char *s1,char *s2,int n) { if(n<=0) T=NULL; else { int p=strchr(s1,s2[n-1])-s1;//查找头结点在S1中的位置. T=new BiTNode; T->data=s2[n-1]; build(T->lchild,s1,s2,p);//创建左子树 build(T->rchild,s1+p+1,s2+p,n-p-1);//创建右子树 } } int high_tree(BiTree T) { int h,left,right; if(!T) { return 0;} else { left=high_tree(T->lchild); right=high_tree(T->rchild); h=((left>right?left:right)+1); return h; } } int main() { int n,len,m; BiTree T; cin>>n; while(n--) { cin>>s1>>s2; len= strlen(s1); build(T,s1,s2,len); m=high_tree(T); cout<<m<<endl; } return 0; }
相关文章
- Java实现 LeetCode 617 合并二叉树(遍历树)
- Java实现 LeetCode 559 N叉树的最大深度(遍历树,其实和便利二叉树一样,代码简短(●ˇ∀ˇ●))...
- Java实现 LeetCode 104 二叉树的最大深度
- Java实现 LeetCode 106 从中序与后序遍历序列构造二叉树
- Lintcode---将二叉树拆成链表
- (剑指Offer)面试题59:对称的二叉树
- 【二叉树】LeetCode 104. 二叉树的最大深度【简单】
- 每日一道 LeetCode (22):二叉树的最大深度
- 二叉树 遍历 先序 中序 后序 深度 广度 MD
- 【二叉树】LeetCode 104. 二叉树的最大深度【简单】
- Leetcode.101 对称二叉树
- LeetCode-104. 二叉树的最大深度【DFS,BFS】
- Leetcode863. 二叉树中所有距离为 K 的结点(medium, BFS, DFS)
- 二叉树的最小深度(C++)
- hdu 5444 Elven Postman(长春网路赛——平衡二叉树遍历)
- 1339. 分裂二叉树的最大乘积-深度优先遍历
- 求取二叉树的层数
- [LeetCode] 543. 二叉树的直径 ☆(递归、数最大深度)
- 【Leetcode刷题Python】104. 二叉树的最大深度
- 剑指 Offer 07. 重建二叉树
- LeetCode 101. 对称二叉树