
数据结构
谈胖胖
码农
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
集合类系列---HashMap原理
一、基本属性static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; //默认初始化大小 16 static final float DEFAULT_LOAD_FACTOR = 0.75f; //负载因子0.75static final Entry<?,?>[] EMPTY_TABLE = {}; ...原创 2019-05-13 21:47:43 · 3291 阅读 · 1 评论 -
集合类系列---通用数据结构(一)
通用的数据简单划分为:数组和链表(最慢),树(较快),哈希表(最快)。增、删、改、查是四大常见操作,不过其实可以浓缩为两个操作:增和查。删除操作和和修改操作都是建立在查找操作上的,所以完美的数据结构应该是具有较高的插入效率和查找效率。通用数据的结构关系:数据结构--数组使用场景数组在以下三个情形下很有用:1)数据量较小。2)数据规模已知。3)随机访问,修改元素值。...原创 2019-05-12 08:57:26 · 2267 阅读 · 0 评论 -
集合类系列--树型结构
基本概念由上图看得出树是一些节点的集合,总结一下树的一些基本概念:1、结点:树中的数据元素都称之为结点 2、根:最上面的结点称之为根,一颗树只有一个根且由根发展而来,从另外一个角度来说,每个结点都可以认为是其子树的根 3、父亲:结点的上层结点,如图中,结点K的父亲是E、结点L的父亲是G 4、兄弟:具有相同父亲的结点称为兄弟,图中F、G、H互为兄弟 5、结点的度:结点所拥有的子树...原创 2019-05-12 09:09:59 · 5417 阅读 · 1 评论 -
集合类系列---基本数据汇总
主要分为两个分支:Collection,MapCollectionlist (ArrayList ,LinkedList(频繁插入删除的时候用),Vector(线程安全),Stack(先进后出)); set (HashSet(无序,根据哈希值查找Entry),TreeSet(需要排序的时候用),LinkedHashSet(有序&&有序迭代的时候用) )MapTree...原创 2019-05-12 21:42:57 · 3186 阅读 · 1 评论 -
数据结构---树的类型
1.二叉查找树(又叫做二叉搜索树,二叉排序树)特征:若左子树不为空,那么左子树所有节点的值小于均小于他的根节点的值。 若右子树不为空,那么右子树的所有节点的值大于根节点的值。 左右子树也分别为二叉排序树。 没有键值相等的节点。2.平衡二叉树(AVL树)含有相同节点的二叉查找树可以有不同的形态,而二叉查找树的平均查找长度与树的深度有关,所以需要找出一个查找平均长度最小的一棵,...原创 2019-07-01 21:29:26 · 5141 阅读 · 4 评论 -
数据结构---二叉树的先序,中序,后续遍历
以下是需要解析的一个二叉树的模型形状:下面两种方法解析二叉树:分别是递归遍历和堆栈遍历的方法首先创建一颗二叉树public class Node { private int data; private Node leftNode; private Node rightNode; public Node(int data, Node ...原创 2019-07-02 19:02:35 · 1647 阅读 · 0 评论 -
数据结构---B树与B+树的区别以及在MySQL数据库中的应用
为了便于说明,我们先定义一条数据记录为一个二元组[key,data],key为记录的键值,key唯一;data为数据记录除key外的数据。B树:每个节点都存储key和data,所有节点组成这棵树,并且叶子节点指针为null。B+树:只有叶子节点存储data,叶子节点包含了这棵树的所有键值,叶子节点不存储指针。后来,在B+树上增加了顺序访问指针,也就是每个叶子节点增加一个指向相...原创 2019-07-05 08:29:05 · 2816 阅读 · 0 评论 -
数据结构---树的分类
最近一直在看关于数据结构的相关知识,特别是看到了树的类型的类型,在论坛上看了很多博客,发现很多博客把树分的比较乱,例如有人将B树说成二叉查找树,搞得我也是云里雾里的,故特意百度了一下,刚好在百度百科里面发现了比较完整的描述,故截图分析给大家,希望对大家有一点帮组,至于每种类型的数的特点,还需要大家自己去研究,这里只是进行简单的分类。...原创 2019-07-21 20:21:09 · 2803 阅读 · 0 评论