java
野人谷
小毛驴初上线(学习笔记记录)
展开
-
ArrayList,LinkedList,Vector大致区别
ArrayList,LinkedList,Vector大致区别原创 2018-11-29 18:13:53 · 76 阅读 · 0 评论 -
HashMap数据结构理解(位桶 + 链表+红黑色)
1.HashMap jdk 1.8有哪些变化:在jdk1.6,jdk1.7 中HashMap 采用 位桶+链表 方式jdk1.8 中采用 位桶 + 链表 + 红黑树 方式(当链表大于8的时候转换为红黑树)优势:查询性能得都很大提升。2.什么是红黑树,优势劣势:红黑树是平衡二叉树的一种算法提现(AVL、Treap…),它有很多限制组成,其中包括(1).每隔节点不是红色就是黑色。(2)....原创 2019-05-12 23:32:28 · 1755 阅读 · 0 评论 -
常用排序3:选择排序
它的工作原理:在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的交换操作介于 0 和 (n - 1) 次之间。选择排序的比较操作为 n (n - 1) / 2 次之间。选择排序的赋值操作介于 0 和 3 (n - 1) 次之间。最好情况是,已经有序,交换0次;最坏情...原创 2019-03-12 19:30:06 · 214 阅读 · 0 评论 -
常用排序2:冒泡排序
冒泡排序是一种最常用排序算法,时间复杂度和空间浮渣度较高,好处是比较稳定,实现简单。一次比较两个元素,如果它们的顺序错误就把它们交换过来。两两比较,出现顺序错误的术后交换,指针向下一个移动继续比较,一个数要和所有的数都会比较一遍。package com.algorithm;public class AlgorithmTest { public static void main(Strin...原创 2019-03-12 19:11:29 · 164 阅读 · 0 评论 -
常用排序1:快速排序理解
快速排序理解:将序列中一个值作为基准值, 从最后一位开始向前和基准值比较出现小于的值与基准值交换位置,之后从前开始往后找大于基准值的数,找到停止并与基准值交换,重复流程直到左右比较的值“遇到”。遇到后出现基准值左边的数都小于基准值,右边的都大于基准值。通过基准值将其分割两个部分继续重复递归比较以上步骤。通过两个不相邻元素交换,可以一次交换消除多个逆序,加快排序速度。快速排序方法在要排序的数据已...原创 2019-03-12 01:06:42 · 268 阅读 · 0 评论 -
java 字符串总结
String 在Java中是使用很频繁的对象。一,字符串的设计1.String 为什么是final?(1)安全性考虑:对于URL,或文件路径等被其他对象修改会造成影响。(2)性能(效率)考虑:由于String的使用比较频繁,所以final设计保证hash码的唯一性,不需要每次重新计算hash值。不可变对象被多线程访共享,当大量访问的时候,节约了等待锁的时间和开销。(3)设计因素:字符串常...原创 2019-03-06 00:13:39 · 217 阅读 · 0 评论 -
HashMap、HashTable、LinkedHashMap、TreeMap初理解
HashMap:Map是基于散列实现,HashMap取代了HashTable,是以键值对的形式存储和操作数据的容器类型。插入和查询“键值对”的开销是固定的,可以通过构造器设置容量和加载因子,以调整容器性能,推介加载因子为0.75,0.75是一个折中选择后的推介值,能解决大多数场景问题。HashTable:HashTable是线程安全的,用了synchronized限制了每个方法,并且Key...原创 2019-03-08 00:58:48 · 398 阅读 · 0 评论 -
int和Integer有什么区别
int介绍int是8个原始数据类型之一,非对象的存在。Integer介绍Integer 是 int 的包装类,提供了基本操作,比如数学运算、int和字符串之间转换等当Integer被初始化后就是一个对象。主要区别1、Integer 是 int 的包装类。2、Integer有一个int类型的字段存储数据,int自己存储数值。3、Integer 默认值为null,int是基本数据类型,默...原创 2019-03-07 01:47:51 · 213 阅读 · 0 评论 -
初学Springboot 继承Redis 报RedisCommandTimeoutExceptio异常
初学Springboot 集成Redis 异常RedisCommandTimeoutException异常:io.lettuce.core.RedisCommandTimeoutException: Command timed out after 1 millisecond(s)at io.lettuce.core.ExceptionFactory.createTimeoutExceptio...原创 2019-01-16 00:02:28 · 2717 阅读 · 0 评论 -
后台服务出现明显“变慢”诊断思路
一、首先,需要对这个问题进行更加清晰的定义:(1)、服务是突然变慢还是长时间运行后观察到变慢?类似问题是否重复出现?(2)、“慢”的定义是什么,我能够理解是系统对其他方面的请求的反应延时变长吗?二、理清问题的症状,这更便于定位具体的原因,有以下一些思路:(1)、问题可能来自于Java服务自身,也可能仅仅是受系统里其他服务的影响。初始判断可以先确认是否出现了意外的程序错误,例如检查应用本身的...原创 2019-05-26 22:34:06 · 451 阅读 · 0 评论