数据结构
文章平均质量分 99
打不死Gin
打不倒我的将被我打败
展开
-
关于红黑树,这篇文章你要看啊
目录前言一、二叉排序树已经够用了?二、红黑树的定义三、怎么保持平衡1.左旋2.右旋四、查找五、增加插入的所有情况1.空树2.父节点是黑色3.父节点是红色3.1父节点是祖父节点的左儿子3.1.1叔叔节点是红色3.1.2叔叔节点不存在3.1.2.1插入节点是父节点左儿子3.1.2.2插入节点是父节点右儿子3.2父节点是祖父节点的右儿子3.2.1叔叔节点是红色3.2.2叔叔节点不存在3.2.2.1插入节...原创 2020-03-01 15:40:54 · 691 阅读 · 0 评论 -
数组、链表、二叉树、二叉排序树、红黑树时间复杂度
查找时间复杂度不论是数组、链表还是二叉树、二叉排序树(搜索树)、红黑树,我们要找到其中特定的一个元素,方法只有一个那就是挨个比较直到找到为止,这就造成了查找的时间复杂度总是与N有关系。数组链表二叉树二叉排序树红黑树查找O(N)O(N)O(N)O(log N)~O(N)O(log N)数组:特指无序数组。假设数组中有N个元素,我们要找到其中一个特定的元...原创 2019-12-24 09:10:36 · 5670 阅读 · 0 评论 -
哈希(hashtable)表,查找方式的颠覆者!
目录前言 前言这是这个系列的最后一篇文章,从最开始的二叉树,到二叉排序树(搜索树),再到红黑树。与哈希表(Hash table)结缘也是在分析JDK1.8以后HashMap源码的时候,之后为了学习红黑树,又把而二叉树、二叉排序树(搜索树)复习了一遍,并促成了这个系列的文章。关于红黑树,在经典的数据结构与算法书籍《Java数据结构和算法(第二版)》、《算法导论(第三版)》都有详细介绍。原书...原创 2019-12-23 10:24:06 · 311 阅读 · 0 评论 -
二叉排序树(搜索树)查找、增加、删除快速入门
目录前言一、定义二、查找三、增加节点四、删除节点1.单身狗2.独生子3.多子多孙(1)25继承(2)35继承 前言二叉排序树也叫二叉搜索树、二叉查找树,是二叉树的一种,但是二叉树的入门很简单,即使没有二叉树的基本,自己手写一个二叉排序树也可以做到,下面我们详细介绍以下二叉排序树的定义和三种最基本的操作——增、删、查。在这里我们只谈思路、就不附上代码了。一、定义满是学究气息的文字定义我们...原创 2019-11-27 14:59:16 · 434 阅读 · 0 评论 -
一眼看出二叉树中序遍历结果的诀窍
目录1.二叉树1.中序遍历 1.二叉树1.中序遍历不论是二叉树、二叉排序树(搜索树),遍历是基础。至于什么是中序遍历,中规中矩的理论,可以参考这篇文章,二叉树中序遍历(递归+非递归)Java.,其中详细介绍了中序遍历实现的方法和结果,包括递归和非递归两种方式。...原创 2019-11-24 15:44:28 · 4565 阅读 · 0 评论 -
来来来!热乎的二叉排序树(搜索树)查找、增加、删除操作
目录前言一、定义二、查找代码图解三、增加节点代码四、删除节点1.单身狗2.独生子3.多子多孙(1)25继承(2)35继承五、完整代码六、写在最后 前言这是这个系列上的第二篇文章,如果你还没有了解二叉树的话,可以先看我的文章中阅读量最高的二叉树(从建树、遍历到存储)Java.一、定义满是学究气息的文字定义我们先不看,还是沿用看图说话的惯例。“数无形时少直觉,形少数时难入微”,所以文字上...原创 2019-11-18 14:07:19 · 735 阅读 · 2 评论 -
二叉树(从建树、遍历到存储)Java
目录一、结构二、二叉树的遍历1.前序遍历(递归+非递归)2.中序遍历(递归+非递归)3.后序遍历(递归+非递归)4.层次遍历代码功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文......原创 2019-11-06 10:50:19 · 12098 阅读 · 2 评论 -
二叉树后序遍历(递归+非递归)Java
目录一、结构二、遍历二叉树1.后序遍历(递归)代码图解功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 一、结构...原创 2019-10-28 17:43:30 · 5629 阅读 · 5 评论 -
二叉树中序遍历(递归+非递归)Java
目录一、结构二、遍历二叉树1.中序遍历(递归)代码图解2.中序遍历(非递归)代码图解新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程...原创 2019-10-25 08:35:21 · 7598 阅读 · 3 评论 -
二叉树前序遍历(递归+非递归)Java
目录数据结构新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入数据结构你好! 这是你第一次使用 Markdow...原创 2019-10-24 17:16:20 · 9325 阅读 · 1 评论 -
LinkedLis的数据结构——双向链表
目录欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑...原创 2019-10-09 21:09:06 · 403 阅读 · 0 评论