自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第五篇:堆排序

第五篇:堆排序一、堆排序概念二、实现描述三、代码实现(https://www.cnblogs.com/chengxiao/p/6129630.html)一、堆排序概念堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序。时间复杂度:O(nlogn)空间复杂度:O(1)稳定性:不稳定二、实现描述三、代码实现(https://www.cnblogs.com/chengxiao/p/6129630.html)public static void heapSort(int[] a

2021-06-22 22:04:25 200 1

原创 第四篇:希尔排序

第四篇:希尔排序一、希尔概念二、算法描述三、代码实现四、希尔优化一、希尔概念希尔排序就是一种特殊的插入排序,里面有增量和分组的概念,根据增量将整个数据分成多组子序列,然后在子序列中进行插入排序,直到增量为1时,就是将整个数据看成一个基本有序的序列了,然后进行插入排序。时间复杂度:O(nlog2n)空间复杂度:O(1)稳定性:不稳定,因为在进行分组时,相同元素可能分到不同组中,改变相同元素的相对顺序。增量选取:希尔排序的时间复杂度与增量的选取有关,但是现今仍然没有人能找出希尔排序的精确下界。一般的

2021-06-22 22:01:42 273

原创 第三篇:插入排序

第三篇:插入排序一、插入概念二、算法描述三、代码实现四、插入优化一、插入概念工作原理:是在某个从前往后的元素的前面是已经排好的有序序列,对于未排序数据(某个元素及其后面),在已排序序列中从后向前扫描,找到相应位置(找到一个比他小的就插入:升序,比他大就将其大的元素往后移动一位)并插入。时间复杂度:O(n^2)空间复杂度:O(1)稳定性:稳定二、算法描述1.将第一个元素看成是已经排好序了,拿排好序的元素后面一个元素A来和前面的元素比较。2.A从有序元素的最后一个比较,如果某个元素比A大就往后面

2021-06-22 21:59:01 193

原创 第二篇:快速排序

第二篇:快速排序一、概念二、算法描述三、伪代码实现(中间值为基准值)四、代码实现(中间值为基准值)五、代码实现(任意基准值实现)六、快排优化一、概念 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。时间复杂度:O(nlog2^n)空间复杂度:O(log2^n)稳定性:不稳定二、算法描述 **基本思想**:通过一趟排序将要排序的数据分割成独立的

2021-06-22 21:54:39 110

原创 第一篇:冒泡排序

第一篇:冒泡排序一、冒泡概念二、算法描述三、伪代码描述四、代码实现五、冒泡排序优化一、冒泡概念 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 时间复杂度:O(n^2)空间复杂度:O(1)稳定性:稳定二、算法描述1、i从0开始,i与i+1比较,如果i>i+1,那么就互换。2、i不

2021-06-22 21:50:33 313

原创 十大排序总结

十大排序总结文章目录十大排序总结一、算法分类:二、算法复杂度三、相关概念一、算法分类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。二、算法复杂度三、相关概念稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面(相等的数不改变他们的相对顺序)。不稳定:如果a原本在b的前面,而a=b,

2021-06-22 21:41:45 74

原创 深入理解之源码剖析Vector

Vector类一、概述二、源码剖析Vector三、API快速使用后期笔记流程图一、概述Vector与ArrayList一样,也是通过数组实现的,与ArrayList的操作访问类似,不同的是它支持线程的同步,即某一时刻只有一个线程能够写Vector,避免多线程同时写而引起的不一致性,但实现同步需要很高的花费,因此,访问它比访问ArrayList慢。所以现在已经不太常用了。Vector知识点:数据结构:底层通过数组实现。无参构造时初始容量为10,扩容时扩大1倍,有指定扩容值时按造指定值扩容。线程

2021-03-12 11:44:30 311

原创 深入理解之源码剖析ArrayList

ArrayList类一、概述二、源码剖析ArrayList三、API快速使用后期笔记踩坑一:不要一定认为集合操作比数组快。踩坑二:在大数据存储时,一般如果数据的大小基本确定,在创建集合时可以指定集合的大小(创建时指定容量的好处)。一、概述java.util.ArrayList集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。ArrayList知识点:底层实现是数组。ArrayList无参构造的默认初始化容量

2021-03-12 11:42:43 106

原创 集合总结

1、为什么要学集合?Java是面向对象的,在开发过程中一切皆对象,我们要操作的是对象。在操作多个对象/数据的过程中,我们需要将数据封装存储起来统一管理,所以需要一个容器放对象,就如数组存储数据,但在Java中存储有更方便的容器。数组也可以存储对象等数据,但编写代码时就显得有些臃肿,而且操作不便。可以简单的理解集合是数组的框架,是Java提供给我们操作对象的一个工具,实际上像ArrayList的底层就是数组,也就是说只是封装了以些数组的操作,使得我们开发更方便。2、集合与数组的区别?区别一:

2021-03-12 11:39:24 69

原创 深入理解HashMap底层结构

深入理解HashMap知识点:一、HashMap(https://www.bilibili.com/video/BV1Z54y1e7id?p=1学习视频)1、概述二、Map继承图继承关系三、源码剖析Hash的存储结构1、HashMap数据结构2、HashMap类成员变量2.1、序列化版本号:集合可序列化2.2、 默认初始化容量(构造方法中可修改):162.3、 集合的最大容量:2的30次幂2.4、 默认负载因子(构造方法中可修改):决定已经使用容量达到多少时进行扩容,例如已使用的容量达到总容量的75%时进行

2021-01-17 21:34:56 2350 1

原创 深入理解Java迭代器Iterator

迭代器一、Iterator二、源码剖析Iterator三、迭代器API四、特殊迭代器五、增强for循环、foreach一、Iterator概述:由Java容器继承体系结构图可知,Iterator是一个接口,它是迭代器的基本接口。但在Collection接口中继承的是Iterable接口。二、源码剖析Iterator1、Iterator是迭代器的基本接口,而在Collection接口中继承的是Iterable接口,不过Iterable中有iterator()这个方法,返回的是Iterator。说明It

2020-12-28 18:27:40 618 4

原创 第一篇:Jshell工具(有常用命令就够了)

第一篇:Jshell工具(有常用命令就够了)一、JShell简介:二、有编辑器不用,为什么用jshell?三、常用jshell命令:有这些命令就够了获取帮助文档:不懂就查嘛!!!一、JShell简介:JShell 是 Java 9 新增的一个交互式的编程环境工具。Java Shell工具(JShell)是用于学习Java编程语言和原型化Java代码的交互式工具。JShell是一个读取-评估-打印循环(REPL),它在输入声明,语句和表达式时对其进行评估,并立即显示结果。该工具从命令行运行。二、有

2020-12-22 10:29:16 988

原创 Java线程池的个人理解

Java线程池线程池底层原理线程池线程池的优点线程池操作测试代码线程池底层原理线程池(个人理解):其实底层原理就是一个容纳多个线程的容器(可以使用ArrayList,LinkedList等容器来装),其中的线程可以反复使用,省去了频繁创建线程对象的操作, 无需反复创建线程而消耗过多资源。线程池所谓线程池不过就是存放通向cpu的路而已,因为不用线程池的话一旦线程任务运行完毕,该线程就会销毁,下一个线程任务到来又会创建一个线程(路),如果使用线程池就会保存线程(路),省去了线程的创建与销毁。为什么说线

2020-08-17 16:52:17 112

空空如也

空空如也

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

TA关注的人

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