06 2018 档案

摘要:先来说说它的特点,然后在一一通过分析源码来验证其实现原理 1、能够保证插入元素的顺序。深入一点讲,有两种迭代元素的方式,一种是按照插入元素时的顺序迭代,比如,插入A,B,C,那么迭代也是A,B,C,另一种是按照访问顺序,比如,在迭代前,访问了B,那么迭代的顺序就是A,C,B,比如在迭代前,访问了B, 阅读全文
posted @ 2018-06-30 21:00 Booker808 阅读(200) 评论(0) 推荐(0)
摘要:待写 阅读全文
posted @ 2018-06-28 18:07 Booker808 阅读(210) 评论(0) 推荐(0)
摘要:给定一个非空的整数数组,返回其中出现频率前 k 高的元素。 例如, 给定数组 [1,1,1,2,2,3] , 和 k = 2,返回 [1,2]。 注意: 你可以假设给定的 k 总是合理的,1 ≤ k ≤ 数组中不相同的元素的个数。 你的算法的时间复杂度必须优于 O(n log n) , n 是数组的 阅读全文
posted @ 2018-06-27 11:48 Booker808 阅读(256) 评论(0) 推荐(0)
摘要:首先,我们先了解什么是maven的坐标(重中之重): 在这里我们可以看到那三个红色的行,基本是pom.xml中出现的最多的配置 例如这个配置:这里我们可以看到我们这个项目的pom文件中,他对名为(maven-jar-plugin)的插件进行了依赖(dependency,依赖) 同时这个插件的版本为2 阅读全文
posted @ 2018-06-27 11:48 Booker808 阅读(214) 评论(0) 推荐(0)
摘要:1.根搜索算法 1.可达性分析算法 该算法是用来判断一些对象是否存活的,这个算法的起点就是图中的GC Root,,从根开始往下搜索,搜索走过的路径称之为“引用链”,如果一个对象到根节点没有任何一条引用链的话,就说明这个对象是要被回收的。 如图,Object5、Object6、Object7虽然他们互 阅读全文
posted @ 2018-06-27 11:47 Booker808 阅读(264) 评论(0) 推荐(0)
摘要:运行时数据区域 jvm在执行Java程序时会把他所管理的区域划分为若干个不同的数据区域,这些区域各有各自的用途。 如图: 1.程序计数器 程序计数器是一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器。每条线程都有一个独立的程序计数器,各线程之间的计数器互不影响。如果线程在执行一个ja 阅读全文
posted @ 2018-06-25 18:35 Booker808 阅读(202) 评论(0) 推荐(0)
摘要:我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一纠纷,C 阅读全文
posted @ 2018-06-24 18:16 Booker808 阅读(147) 评论(0) 推荐(0)
摘要:加载类的开放性 我们在了解双亲委派模型之前,不得不先了解一下什么是类加载器。虚拟机设计团队之初是希望类加载过程“通过一个类的全限定名来获取描述该类的二进制字节流”这个动作能放到虚拟机外部实现,以便于让程序自己决定如何获取该类,实现这个动作的代码的工具成为类加载器。 可能很多人觉得类加载器,顾名思义, 阅读全文
posted @ 2018-06-24 15:24 Booker808 阅读(755) 评论(0) 推荐(1)
摘要:给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值。 这条路径可以经过也可以不经过根节点。 注意:两个节点之间的路径长度由它们之间的边数表示。 示例 1: 输入: 输出: 示例 2: 输入: 输出: 注意: 给定的二叉树不超过10000个结点。 树的高度不超过1000。 思路:我们可以通 阅读全文
posted @ 2018-06-22 23:11 Booker808 阅读(357) 评论(0) 推荐(0)
摘要:给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 示例:给定的有序链表: [-10, -3, 0, 5, 9], 平衡二叉查找树:简称平衡二叉树。由前苏联的数学家Adelse-Vels 阅读全文
posted @ 2018-06-15 15:52 Booker808 阅读(196) 评论(0) 推荐(0)
摘要:快速排序,就是我们选取数组里的一个基数,根据基数,我们把整个数组分为两部分,一边是大于该基数的,一边是小于该基数的。 如上图所示,我们选取6作为基数,经过一系列的排序后,6处于它在排序好的数组中应该存在的位置,两边分别是大于它和小于它的数字,然后我们再分别对两边分别递归快排,之后再对两边分别递归快排 阅读全文
posted @ 2018-06-13 18:40 Booker808 阅读(250) 评论(0) 推荐(0)
摘要:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 示例 1: 示例 2: 阅读全文
posted @ 2018-06-10 09:23 Booker808 阅读(286) 评论(0) 推荐(0)
摘要:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 示例 2: 阅读全文
posted @ 2018-06-10 09:20 Booker808 阅读(130) 评论(0) 推荐(0)
摘要:待写 阅读全文
posted @ 2018-06-06 21:03 Booker808 阅读(123) 评论(0) 推荐(0)
摘要:转载自:https://www.cnblogs.com/micrari/p/6790229.html 先回答两个问题: 什么是ThreadLocal?ThreadLocal类顾名思义可以理解为线程本地变量。也就是说如果定义了一个ThreadLocal,每个线程往这个ThreadLocal中读写是线程 阅读全文
posted @ 2018-06-06 18:19 Booker808 阅读(240) 评论(0) 推荐(0)
摘要:问题: 给你两个排序的数组,求两个数组的交集。 比如: A = 1 3 4 5 7, B = 2 3 5 8 9, 那么交集就是 3 5,n是a数组大小,m是b数组大小。 思路: (1)从b数组遍历取值,然后把值与a数组的每一个值进行比较,如果有相等的,就保存下来,直到ab全部遍历完,这样时间复杂度 阅读全文
posted @ 2018-06-04 13:03 Booker808 阅读(2992) 评论(0) 推荐(0)
摘要:给定一个非空二叉树,返回其最大路径和。 本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不需要经过根节点。 示例 1: 示例 2: 阅读全文
posted @ 2018-06-03 22:42 Booker808 阅读(202) 评论(0) 推荐(0)
摘要:1、首先以管理员的身份登录本地数据库:sqlplus "/as sysdba"如下图: 2、卸载数据: shutdown normal 3、 重新装载数据: 4、进行数据库打开操作,会显示错误文件标号: 5、处理数据库中的文件 6、重复4操作,看是否还有错误文件若有继续重复5操作(注:要记得输入对应 阅读全文
posted @ 2018-06-02 11:23 Booker808 阅读(591) 评论(0) 推荐(0)
摘要:纠正一下,TreeMap实现一定顺序是通过Comparable接口的,而他实现元素不重复也是完全通过compareTo,而不是hashCode和equals,因为debug不会走到hashCode和equals方法,但是会走compareTo方法 阅读全文
posted @ 2018-06-01 23:35 Booker808 阅读(467) 评论(0) 推荐(0)
摘要:啥都不说,上图: 1、console控制台打印乱码 2、右键: Run As --> Run Configurations 3、找到common项,在“Encoding”栏,看到当前用的是默认“UTF-8”编码方式 4、设置成“GBK”,不区分大小写 5、点击“Run”,显示正常 阅读全文
posted @ 2018-06-01 20:24 Booker808 阅读(3652) 评论(0) 推荐(1)