自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Miss_Eleven

天道酬勤

  • 博客(13)
  • 收藏
  • 关注

原创 不要忘记前进的脚步

又一次兵荒啊马乱啊,再一次吃了知识点杂乱且没有深度挖掘的苦。在前进的路上,走着走着便忘记了脚步。开始系统且专注学习并记录,以此记录并催促不断前进的脚步。...

2018-03-28 14:35:57 261

原创 一颗二叉搜索树

二叉搜索树是一颗度为2的数,且左子树都不大于根节点,右子树都不小于根节点。 以下分步实现一个简单的二叉搜索树节点 二叉搜索树上的节点保存着一个值value, 指向父节点的指针,以及两个指向左右兄弟的指针。简单的实现如下: public class Node { T value; Node parent; Node left; ...

2018-04-26 22:00:08 211

原创 Java容器 ArrayDeque源码解析

ArrayDeque是可调整大小的双端队列实现。 用作栈的实现,性能优于Stack 用作队列的实现,性能优于LinkedList基本结构 public class ArrayDeque<E> extends AbstractCollection<E> implements Deque<E>, Cloneable, Serializabl...

2018-04-22 03:42:25 242

原创 Java容器 PriorityQueue源码解析

PriorityQueue是基于堆的无界优先队列实现。堆的子节点都不大于(最小堆)或都不小于(最大堆)的一种近似完全二叉树的数据结构。 堆用数组实现,用数组的index作为索引。且 i 的父节点为 [i/2],子节点为[2i], [2i + 1],从数组的index=1开始计算(ProrityQueue中是从index=0开始存储的)。PriorityQueue 基本结构 pu...

2018-04-21 20:57:46 213

原创 Java容器 队列(Queue) 概览

队列是一种先进先出(First-in-First-out)的数据结构。Java容器框架中Queue接口以及其相关的类以及接口是该数据接口的实现。 Java Queue框架类图如下: interface Queue Queue接口中除了继承Collection基本的操作,还提供了额外的插入,获取和查询的操作。这些操作存在的形式: 1.出错时抛出异常 or 2. 返回一个特殊值(null o...

2018-04-21 14:54:48 1413

原创 Java容器 LinkedList源码分析

1. LinkedList的基本方法实现类签名public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable{}AbstractSequentialList...

2018-04-20 21:50:20 146

原创 Java容器 ArrayList源码分析

1 ArrayList 中的基本方法实现ArrayList 方法签名public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.SerializableRandomAccess接口说明Ar...

2018-04-20 21:45:32 171

原创 Java容器 列表(List) 概览

列表是一组元素可以重复,可以有多个空元素的元素集合。Java容器框架中接口List,抽象类AbstractList以及各种子类ArrayList, LinkedList等都是列表的实现。 类框架图如下: List是有序序列的接口规定。该容器的顺序与元素插入的顺序保持一次,可以通过整数索引访问元素。 List中除了继承Collection接口中声明的add, remove, get等方法,...

2018-04-20 21:33:04 576

原创 Java深入学习之 泛型程序设计

1 泛型概述Java泛型在JSE 5.0提出。泛型,表示适用于更多的类型。类型参数化,使用一个类型参数,不指定确切的类型,在使用的时候指定类型,便可以不用只是因为类型不同而相同的代码。2 泛型使用2.1 泛型类 public class GenericClass<T> { private T value; public T ge...

2018-04-18 21:01:20 86

原创 希尔排序

希尔排序希尔排序是增量为h的插入排序算法。插入排序算法比较和移动的增量为1,如果待排序元素在最后一个,则需要移动n-1个位置才能移到正确的位置。希尔排序根据待排序序列的无序性,将增量变为h,成为比较h增量的子数组(数组较小,无序)就可以使比较的位置可以是h。Java实现public class ShellSort { public static void main(Str...

2018-04-09 21:16:10 97

原创 归并排序

归并排序归并排序运用的是分治的思想,将问题分解成规模更加小的问题解决,然后合并。归并排序先将待排序序列分解成更加小的待排序序列直到待排序序列已经排好序(长度为1),然后合并排好序的序列。涉及算法的伪代码实现 // 使用一个哨兵避免每次都判断待排序序列越界问题 MEARGE(A, lo, mid, hi) n1 = mid - lo + 1; ...

2018-04-08 21:41:14 127

原创 插入排序

插入排序 将待排序序列依次插入到已经排好序的序列中,直到排序完成算法过程伪代码实现INSERTION_SORT(A) for i=2 to A.length //约定,数组是从1开始的角标 key = A[i] j = i - 1; while(j > 0 AND A[i] > A[j]) A[j +...

2018-04-03 23:45:42 98

原创 选择排序

选择排序 选择最小的一个元素放在第一个位置上,第二小的元素放在第二个位置,以此类推,直到待排序序列排序完成。排序过程待排序序列: 4, 6, 3, 1, 8, 9, 3i = 0; min = 3 : 1, 6, 3, 4, 8, 9, 3i = 1; min = 2 : 1, 3, 6, 4, 8, 9, 3 i = 2; min = 6 : 1, 3, 3, ...

2018-04-01 22:23:48 104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除