- 博客(26)
- 收藏
- 关注
原创 回溯算法1
习题:46. 全排列 - 力扣(LeetCode) (leetcode-cn.com)大致思路:1.每个元素都会走以第一个元素为path路径第一个数,递归进行,一直得到path的size=数组的大小,将其添加到结构集当中,之后递归返回。注意变量的值,回溯处理,移除最后的元素(恢复之前的状态),123为例子,123第一次退回来,添加3时候for循环的i为2,退回来就删除一个元素,之后再退,退到12状态,接着quanpai()方法之后执行,删除最后一个元素,path只有一个元素1,当前i=1&l
2022-03-08 13:23:07
204
1
原创 HashMap
个人补充:参考:(135条消息)java基础--04--集合框架--02--HashMap初始化/定位桶位置/扩容源码分析--jdk1.8_na_tion的专栏-CSDN博客1、定位桶位置增加、删除、查找键值对,定位到哈希桶数组的位置都是关键的第一步。HashMap处理逻辑为:先是通过扰动函数hash(Object key)处理key的hashCode而得到其hash 值,然后通过 hash&(capacity-1)判断当前元素存放的位置。...
2022-03-06 20:18:20
391
原创 重识Mysql
彻底搞懂 MySQL 事务的隔离级别-阿里云开发者社区 (aliyun.com)脏读、不可重复读和幻读的区别 - 老大对不起八戒 - 博客园 (cnblogs.com)1.隔离级别1.Read Uncommitted(读取未提交内容)所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。 读取未提交的数据,也被称之为脏读(Dirty Read)。2.Read Committed(读取提交内容)一个事务只能看见已经提交事务所做的改变。
2022-03-04 21:12:47
286
原创 Redis知识点
1.Redis的过期策略有哪些?大量key集中过期导致卡顿如何解决?如果我们对key设置了失效时间1分钟,1分钟后,Redis 是如何对这个 key 进行删除的呢?Redis过期策略采用的是惰性删除+定期删除策略。惰性删除当某个key被设置了过期时间之后,客户端每次对该key的访问(读写)都会事先检测该key是否过期,如果过期就直接删除。定期删除当某个key被设置了过期时间之后,客户端每次对该key的访问(读写)都会事先检测该key是否过期,如果过期就直接删除(这种是被动删除);但有
2022-03-04 16:09:30
348
原创 mysql-页
插入时,在页结构的用户数据区域对主键的数据航进行排序,页目录也产生,每页大小16kb,查询的时候,会通过页目录进行查找。(推荐主键递增,防止页间的数据航不断的更新)
2022-03-04 15:38:16
314
原创 Mysql日志
binlog原子性:主要依靠undo.log日志实现,即在事务失败时执行回滚。undo.log日志会记录事务执行的sql,当事务需要回滚时,通过反向补偿回滚数据库状态持久性:主要依靠redo.log日志实现。首先,mysql持久化通过缓存来提高效率,即在select时先查缓存,再查磁盘;在update时先更新缓冲,再更新磁盘。以减少磁盘io次数,提高效率。但由于缓存断电就没了,所以需要redo.log日志。在执行修改操作时,sql会先写入到redo.log日志...
2021-12-27 09:31:31
87
原创 Mysql索引
主键自动排序,方便查找避免链表方式查询,mysql进行了进行了分页,每页存储16KB(InnoDB),并进行页目录(一种数据结构)管理页目录: 存储 每一页第一个主键的值及其指针(不存储数据)B B+树的区别mysql索引的底层实现:放入数据时,他会基于数据排序,排序之后,数据以量链表的形式以一个指针把数据链接起来,同时mysql在底层为了进一步优化,他是基于B+树的数据结构进行的存储,就是对我们的数据进行了一页...
2021-12-04 15:17:44
241
原创 spring加载启动
2.容器的入口其子接口:BeanFactory和ApplicationContext等同容器。postProcessor: 后置处理器增强器,BeanFactoryPostProcessor 针对操作对象BeanFactoryBeanPostProcessor,操作对象为Bean
2021-11-25 15:56:26
231
原创 枚举类最佳实践
个人理解:定义一些常用的数据(状态码,信息之类的),用到的时候,直接调用类名.定义枚举的名, 进行直接使用,注意类get,set,toString方法简言之: 定义不变的变量数值,用的时候就直接使用,实质就是进行了封装,用的时候直接调用public enum PWD { ROOT(200, "ok"), WWW(404, "异常"); private int code; private String msg; PWD(int code,...
2021-09-13 14:10:53
198
原创 ArryList的contains方法(内部调用equals方法)有时重写
ArrayList的contains方法的源码public boolean contains(Object o) { return indexOf(o) >= 0; } public int indexOf(Object o) { if (o == null) { for (int i = 0; i < size; i++) ...
2020-04-17 22:10:56
466
原创 冒泡排序
import java.util.Random;public class 随机数组 {/*生成随机数* [0,N): aa=new Random().nextInt(N)* [1,N]: aa=new Random().nextInt(N)+1** 终极公式*int randNumber=rand.nextInt(Max-Min+1)+Min;*...
2020-04-17 20:24:13
148
原创 equals与==区别
== : 如果比较的是基本数据类型,那么比较的是变量的值== :如果比较的是引用数据类型,那么比较的是地址值(两个对象是否指向同一块内存)equals:如果没有重写equals方法比较的是两个对象的地址值。 如果重写了equals方法后我们往往比较的是对象中的属性的内容一 、 java.lang.Object 中的 equals()方法: public boolean equ...
2020-04-17 11:15:05
183
原创 继承
/*super关键字: 代表了父类空间的引用1.子父类存在着同名的成员时,子子类中默认访问子类成员,可通过super关键字,指定访问父类的成员。(成员:成员方法和成员变量)2.创建子类对象时,默认会先调用父类无参的构造方法,可以通过super关键字指定调用父类的构造方法*注意: super与this关键字不能同时出现在同一个构造函数中调用其他的构造函数; 但...
2020-04-17 00:29:20
135
原创 hashode和equals
package 补练;import java.util.HashSet;class Person{ int id; String name; public Person(int id, String name) { super(); this.id = id; this.name = name; } public String toString() { retu...
2020-04-15 21:59:04
135
原创 2020-04-15
Comparator中的compare方法正序排列public int compare(int o1, int o2) { return o1 - o2; }public int compare(int o1, int o2) { return o2-o1;; }Comparable中的...
2020-04-15 17:39:43
117
原创 比较重写
1.基本数据类型数组可以直接调动Arrays类的静态sort方法,然后输出例如: int iArr[] = {1,2,4,6}; Arrays.sort(iArr);2.数组用Arrays工具类,集合用collections集合工具类。3.但是如果我们是对象不是数组的话,则对象所在的类必须实现comparable接口,覆写它的compareTo方法,并且要有不...
2020-04-15 17:36:02
130
原创 IO流read方法返回值
1byte[] buf=new byte[1024];int length=bufferedInputStream.read(byte);如果传入缓冲数组,内容是存储到缓冲数组中,返回值是存储到缓冲数组中的字节个数`2int content=0;while((content=bufferedInputStream.read())!=-1){。。。。。。。}如果read方法没有传入缓...
2020-04-14 14:01:37
2489
1
原创 抽象类,看者能会
抽象类 (抽象类可以存在构造函数,其作用是提供给子类创建对象的时候初始化父类的属性的 (supper关键字)) 继承:Animal被cat,fish继承,但是Animal的run方法挺呆板,子类的run方法都是四条腿,这样合适吗?存在问题:1.动物的run方法描述不正确2.没有强制要求子类一定要重写run方法抽象类应用场景:当描述一个类的时候发现该种事物确实存在着某种行为,但是这...
2020-04-13 22:33:29
129
原创 ReadLine小结
File a = new File("E:\\Java文件\\CSDN\\src\\Demo1\\Read换行.java"); FileReader b = new FileReader(a); BufferedReader c = new BufferedReader(b); String line=null; while((line=c.readLine())!=null){...
2020-04-13 16:24:59
218
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人