java数据结构与算法
醉墨重生
世间万物终有循环,太极阴阳始的初衷。
展开
-
树的简单介绍
结点的度 结点拥有的子树数称为结点的度。度为0的结点称为叶子结点或终端结点(如上图的GHIJ),度不为0的结点称为非终端结点或分支结点(如ABC等)。除根结点以外,分支结点也称为内部结点。树的度是树内各结点的度的最大值。(如此时B结点的度是1,D结点的度是3)层次与深度 结点的层次从根开始定义起,根为第一层,根的孩子是第二层。若某节点在第k层,则其子树的根就在k+1层。其双亲在同一层的...原创 2018-03-15 11:58:48 · 774 阅读 · 0 评论 -
二叉树
通过前序遍历二维数组生成二叉树ublic class BinaryTree { private TreeNode root = null;//根结点 public BinaryTree() { root = new TreeNode(1, "A"); } /** * 构建二叉树 * A * B C...原创 2018-03-16 08:30:37 · 274 阅读 · 0 评论 -
图的介绍及简单使用
图 图是由顶点的有穷非空集合和顶点之间边的的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合.图的特征线性表中我们把数据元素叫元素,树中将数据元素叫结点,在图中数据元 素,我们则称之为顶点(Vertex)。线性表中可以没有数据元素,称为空表。树中可以没有结点,叫做空树。线性表中,相邻的数据元素之间具有线性关系,树结构中,相邻两层的结 ...原创 2018-03-16 15:04:28 · 317 阅读 · 0 评论 -
ArrayList源码分析
构造函数源码有参构造函数传入一个int public ArrayList(int capacity) { //判断传入的值是否小于0 if (capacity < 0) { throw new IllegalArgumentException("capacity < 0: " + capacity);原创 2018-03-13 16:59:21 · 161 阅读 · 1 评论 -
链式存储方式线性表之LinkedList源码解析
线性表:顺序存储结构和链式存储结构 链式存储结构的优缺点: - 优点:删除插入效率高 - 缺点:查询效率高 循环列表:将单链表中终端结点的指针端由空指针改为指向头结点,就使整个单链表形成一个环,这种头尾相连的单链表称为单循环链表,简称循环链表 双向循环列表:双向循环链表是单向循环链表的每个结点中,再设置一个指向其前驱结点的指针域 对于空的双向循环列表 双向循环列表...原创 2018-03-13 17:01:20 · 303 阅读 · 0 评论 -
stack栈源码分析
返回栈顶的元素,且不删除 public synchronized E peek() { try { //elementData数据元素的集合 elementCount元素集合的数量 栈是先进后出的 return (E) elementData[elementCount - 1]; } catch (I...原创 2018-03-13 17:03:00 · 345 阅读 · 0 评论 -
队列Queue源码分析
定义:队列是 只允许在一端进行插入操作,而在另一端进行删除操作的线性表插入的一端称为队尾,删除的一端称为对头缺点:出栈复杂度高,容易造成假溢出:可能对头有很多空位置,此时插入放到了队尾,就可能造成溢出,此时叫做假溢出解决办法:循环队列-把头尾相接的循序存储结构称为循环队列(可以解决假溢出) ...原创 2018-03-14 10:27:02 · 574 阅读 · 0 评论 -
HashMap源码解析
参数解析 //默认最小容量为4 private static final int MINIMUM_CAPACITY = 4; //最大容量 private static final int MAXIMUM_CAPACITY = 1 << 30; //默认是0.75即当加载超过0.75就进行扩容 static final float DEFAULT_LOAD_...原创 2018-03-14 13:45:31 · 195 阅读 · 0 评论 -
LinkedHashMap和LruCache源码解析
首先了解一下LinkedHashMap两个排序:插入排序和访问排序插入排序和访问排序:队列方式,最新插入的放在尾部,最开始进来的放在头部;出栈出的是头部访问排序:最新的访问放在尾部,出栈出的是头部LinkedHashMap源码分析参数详情 //头部节点 transient LinkedEntry<K, V> header; //如果true代表访问排序,f...原创 2018-03-14 17:15:52 · 205 阅读 · 0 评论