【数据结构——树】二叉树面试相关知识点总结(二)
来源:互联网 发布:dnf数据芯片会涨价吗 编辑:程序博客网 时间:2024/06/06 20:50
11.求二叉树第K层的节点个数
13. 由前序遍历序列和中序遍历序列重建二叉树
14. 求二叉树中两个节点的最低公共祖先节点
15. 求二叉树中节点的最大距离
16.二叉树的非递归实现
17.二叉查找树
11.将二叉查找树变为有序的双向链表
18.伸展树
19.B树
【11】求二叉树第K层节点个数
递归解法:
(1)如果二叉树为空或者k<1返回0
(2)如果二叉树不为空并且k==1,返回1
(3)如果二叉树不为空且k>1,返回左子树中k-1层的节点个数与右子树k-1层节点个数之和
<span style="font-size:12px;color:#333333;">/*************求二叉树第k层的节点个数**************/int GetNodeNumKthLevel(BiTreeNode* &T,int k){if(k == 0 || T == NULL)return 0;if(k == 1) return 1;int numleft = GetNodeNumKthLevel(T->lchild,k-1);//左子树中K-1层的节点个数int numright = GetNodeNumKthLevel(T->rchild,k-1);//左子树中K-1层的节点个数return(numleft + numright);}</span>
[15]节点的最大距离
递归解法:
1.根节点高度为0,每经过一个节点,树的高度加1,递归遍历,返回左右子树中的最大值
2.每次遍历更新节点间的最大距离
int tree_hight(BiTreeNode* pRoot,int& maxLen){if(pRoot == NULL) return -1;int pLeftLen = tree_hight(pRoot->pLeft,maxLen) +1;int pRightLen= tree_hight(pRoot->pRight,maxLen) +1;maxLen = max(pLeftLen + pRightLen,maxLen);return pLeftLen > pRightLen ? pLeftLen : pRightLen; }
0 0
- 【数据结构——树】二叉树面试相关知识点总结(二)
- 【数据结构——树】二叉树面试相关知识点总结(一)
- 数据结构之二叉树——相关问题总结
- 二叉树相关知识点
- 二叉树相关面试题目总结
- 二叉树知识点总结
- 【数据结构】——-树和二叉树(二)
- 数据结构知识整理(二)——二叉搜索树
- 数据结构-二叉树(二)
- 二叉树相关面试题目之实例总结
- 二叉树面试总结
- Java面试知识点总结(二)
- 【面试准备】数据结构-二叉树
- 数据结构---二叉树总结
- 面试准备--数据结构与算法(二)--二叉查找树的图文解析及其java实现
- 二叉树主要知识点总结
- 【数据结构】二叉树相关操作
- C++数据结构:二叉树(二)——二叉树的遍历
- 计算机经典书籍电子书合集(适合计算机学生学习以及程序员笔试、面试)
- QT学习资料
- KJFrameForAndroid框架学习----高效加载Bitmap
- hdu 4862 费用流
- python的浅拷贝,深拷贝和赋值
- 【数据结构——树】二叉树面试相关知识点总结(二)
- hdu 1068 Girls and Boys(匈牙利算法求最大独立集)
- 删数问题
- Cocos2D-x设计模式发掘之一:单例模式 -----------------cocos2d-x3.0正式版本(7.21)
- python执行shell命令
- 10年,20年后,你会是什么样子?
- 北大牛人唐翔
- Python tuple 元组详解
- 阻抗匹配基础