高级数据结构
爱马拉松的东宫高兴
程序员的八荣八耻:
以动手实践为荣,以只看不练为耻。
以打印日志为荣,以出错不报为耻。
以局部变量为荣,以全局变量为耻。
以单元测试为荣,以手工测试为耻。
以代码重用为荣,以复制粘贴为耻。
以多态应用为荣,以分支判断为耻。
以定义常量为荣,以魔法数字为耻。
以总结思考为荣,以不求甚解为耻。
展开
-
二叉搜索树
文章目录关联式容器:树形结构+哈希结构二叉搜索的平衡树结构关于有序的序列,O(logN)二叉搜索树二叉搜索树的概念二叉搜索树操作二叉搜索树的实现二叉搜索树性能分析关联式容器:树形结构+哈希结构文件: 许多异常的IP地址,找到出现次数最多的前K个IP地址可能需要统计每个IP地址出现次数借助优先级队列–堆 找到前K个IP地址<IP,次数> <英文单词,中文含义>...原创 2019-08-14 21:56:41 · 178 阅读 · 0 评论 -
平衡二叉树(AVL)
文章目录AVL二叉平衡搜索树AVL树的概念AVL树节点的定义AVL树的插入AVL树的旋转左单旋右单旋左右双旋右左双旋总结AVL树的验证AVL树的性能AVL树代码实现AVL二叉平衡搜索树AVL树可以是一棵空树AVL树:二叉搜索树+每个节点增加平衡因子平衡因子:右子树高度-左子树高度平衡因子的绝对值不能超过1平衡因子: -1 0 1高度:logNAVL树的概念二叉搜索树虽可以缩短查找...原创 2019-08-21 23:00:37 · 361 阅读 · 0 评论 -
红黑树实现
文章目录红黑树红黑树的概念红黑树的性质总结红黑树节点的定义思考题红黑树的结构红黑树的插入情况一: cur为红,p为红,g为黑,u存在且为红情况二: cur为红,p为红,g为黑,u不存在/u为黑情况三: cur为红,p为红,g为黑,u不存在/u为黑红黑树的验证红黑树与AVL树的比较红黑树代码实现RBTree.hppmain.cc红黑树红黑树的概念红黑树,是一种二叉搜索树,但在每个结点上增加一个...原创 2019-08-22 17:53:27 · 240 阅读 · 0 评论 -
B-树概念和插入实现
B-树1. 基本搜索结构顺序查找—O(N)二分查找—序列必须有序—>logN二叉搜索树—O(N)AVL—红黑树—O(logN)哈希—高效查找—>O(1)位图—>O(1)布隆过滤器—O(k)以上结构适合用于数据量不是很大的情况,如果数据量非常大,一次性无法加载到内存中,使用上述结构就不是很方便。比如:使用平衡树搜索一个大文件上面方法其实只在内存中保存了每一项...原创 2019-10-03 16:59:46 · 990 阅读 · 0 评论