
树
N1314N
有志者事竟成
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
请你来说一说红黑树和AVL树的定义,特点,以及二者区别
参考回答: 平衡二叉树(AVL树): 平衡二叉树又称为AVL树,是一种特殊的二叉排序树。其左右子树都是平衡二叉树,且左右子树高度之差的绝对值 不超过1。一句话表述为:以树中所有结点为根的树的左右子树高度之差的绝对值不超过1。将二叉树上结点的左子 树深度减去右子树深度的值称为平衡因子BF,那么平衡二叉树上的所有结点的平衡因子只可能是-1、0和1。只要二 叉树上有一个结点的平衡因子的绝对值大于1,则该...原创 2019-07-01 09:16:01 · 1623 阅读 · 0 评论 -
手写代码:二叉树序列化反序列化
参考回答: 序列化:必须保存一个中序遍历结果,然后外加一个前序或者后序遍历结果 反序列化:根据两次遍历生成的结果恢复二叉树,代码如下(前序和中序): ```TreeNode* helper(vector<int>pre,int startPre,int endPre,vector<int>in,int startIn,int endIn) { if(startPre&g...原创 2019-07-01 09:54:52 · 421 阅读 · 0 评论 -
请你回答一下map和unordered_map优点和缺点
参考回答: 对于map,其底层是基于红黑树实现的, 优点如下: 1)有序性,这是map结构最大的优点,其元素的有序性在很多应用中都会简化很多的操作 2)map的查找、删除、增加等一系列操作时间复杂度稳定,都为logn 缺点如下: 1)查找、删除、增加等操作平均时间复杂度较慢,与n相关 对于unordered_map来说,其底层是一个哈希表,优点如下: 查找、删除、添加的速度快,时间复杂度为...原创 2019-07-01 09:57:15 · 2205 阅读 · 0 评论 -
请你介绍一下B+树
参考回答: B+是一种多路搜索树,主要为磁盘或其他直接存取辅助设备而设计的一种平衡查找树,在B+树中,每个节点的可以有多个孩子,并且按照关键字大小有序排列。所有记录节点都是按照键值的大小顺序存放在同一层的叶节点中。相比B树,其具有以下几个特点: 每个节点上的指针上限为2d而不是2d+1(d为节点的出度) 内节点不存储data,只存储key 叶子节点不存储指针 ...原创 2019-07-01 09:58:14 · 512 阅读 · 0 评论