- 博客(53)
- 收藏
- 关注
原创 面试专栏-03-Git的常用命令
可以将工作区中已经删除的文件,但是暂存区中已经还未删除的文件恢复到工作区中。:将 file 文件从暂存区中删除,但是保留工作区中的文件。:表示,以软回退的方式,回退到上一个版本,用于。:查看操作记录,用来回退到误操作的版本。:将文件直接从工作区和暂存区汇总删除。省略(Local)只对本地仓库有效。:将 file 文件添加到暂存区。:系统配置,对所有用户都生效。:查看 git 版本信息。:全局配置,所有仓库生效。中的文件提交到本地库。:查看暂存区中的内容。
2025-05-12 08:54:38
405
原创 算法习题-力扣447周赛题解
经过思考,可以发现,如果有两种排列,他们选择的数字都一样,余数的结果也一样,那末,只需要遍历一种情况就好,而另一种情况和这一种的情况相同。 明白了字典序最小,就可以知道,如果刚开始排列的时候,我就是按照从字典序最小的开始排列,后面依次增大,那末,第一次遇到的能被。的特点,将符合要求的放在同一个集合中,最后遍历所有的询问,看看是否在同一个集合中即可。 由题意可知,需要把所给的数组,按照某一种特定的顺序重新排列后,所组成的拼接后的数字可以被。整除的排列,这样就可以节省一大部分的时间。
2025-05-06 09:19:35
741
原创 算法习题-经典环形涂色问题
1、 第 1 个和第 n-1 个相同时:第 n 个有 m-1 种选法,前 n-1 个的选法总数等于。,因为第 1 个和第 n-1 个相同,因此相当于第 n-2 个直接连接在了第 1 个上,因此种数就相当于。(对于两种不同的方案,只要有一个区域上色的颜色不同,我们即认为是不同的)种颜色上色,使得相邻两个区域的颜色不同,问共有多少种不同方案,由于结果可能很大,对。因为当只有一个部分时,没有相邻的部分,不满足条件,因此种类有 0 个。进一步化简,利用特征方程,进行尝试求解。种颜色时的所有方案数。
2025-04-23 20:27:53
353
原创 面试专栏-02-MySQL知识点(第二部分)
原子性、一致性、持久性:是通过底层的两个日志文件来实现的,redo log 、undo log隔离性:是通过锁机制和MVCC(多版本并发控制)来实现的。
2025-04-18 08:55:16
1040
1
原创 算法知识-欧拉函数+快速幂+费马定理+组合数+容斥原理
1~n 中与 n 互质的数的个数例如:6 的有 1 2 3 4 5 6 其中,与 n 互质 的 数的个数为 2个分别是:1、5。
2025-04-05 21:23:49
598
1
原创 算法知识-最大公约数
原理:根据 (a,b) = (a,R) ===> 表示,a 和 b的共因数等于a和a % b的公因数。约数个数为:(2 + 1)× (1 + 1) = 2 × 3 = 6。验证:12 的约数有 1、2、3、4、6、12 一共 六 个。验证:1 + 2 + 3 + 4 + 6 + 12 = 28。任何一个数 x 都可以写成为:x = q。1.3 最大公因数(最大公约数),较大的那个可以直接算出来。1.1 试除法求约数。1.2 求约数的个数。
2025-03-23 19:08:21
412
1
原创 算法习题-链表求和2
题目要求:假定用链表表示两个数,其中每个节点仅包含一个数字。假设这两个数的数字顺序排列,请设计一种方法将两个数相加,并将其结果表现为链表的形式。2、再获取低位的进位,利用进位运算高位。1、先获取同阶低位,进行求和运算。3、最后判断最高位是否进位。
2025-03-16 11:26:34
210
原创 面试专栏-01-MySQL知识点(第一部分)
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎可以被称为表类型。-- 查看数据库所支持的存储引擎索引是一种有序的数据结构,用于高效的获取数据。**优点:**提高检索效率,降低IO成本。通过索引排序,降低CPU的消耗。**缺点:**索引也会占用存储空间,并且再插入和删除数据时,需要维护索引结构。
2025-03-09 18:47:07
989
原创 JVM-第六章-垃圾回收器
Serial Old收集器同样也采用了串行回收和”“Stop-the-World”机制,只不过内存回收算法使用的是标记-压缩算法。从分代上看,G1依然属于分代型垃圾回收器,它会区分年轻代和老年代,年轻代依旧有Eden区,Survivor区。中几乎可认为有划时代的意义的垃圾收集器:CMS (Concurrent-Mark-Sweep)收集器,CMS 的垃圾收集器,算法采用标记-清除算法,并且也会“Stop-the-world”CMS 收集器的关注点是尽可能短的垃圾收集时,用户线程的停顿时间。
2024-12-02 10:06:39
869
原创 JVM-第四章-执行引擎(不含垃圾回收)
如果想让一个Java程序运行起来,执行引擎的任务就是将字节码指令解释/编译为对应平台的本地机器指令才可以。
2024-11-17 14:30:24
216
原创 我的生活记(dz-cn)
我先说(吐槽)一下过去的一周,从2024/11/4开始到2024/11/10,不是我说,事情是真的多,软件著作权申请的材料准备,官网项目的工作推进,小组的集会聚餐,博客的评选评分,线性代数的期中考试,创新创业大赛的参加,JVM的学习等,所以也可以看到,上次更新的JVM的第三章后就暂时没有后续了,因为当时的事情实在是太多了,没有时间去弄这个了。,让我能回味一下,如今(大二上学期 2024/11/10),还不太清楚,我下一次看到这篇文章的时候是什么时间,在此,我就在多留下一个时间的痕迹,以便来日寻找,
2024-11-10 13:25:27
401
原创 Java 面试题
该机制的实现,是通过迭代器在创建时,对集合进行了快照操作,即迭代器遍历的是原集合的数组快照副本,若在这个过程,集合进行修改操作,会将原有的数组内容复制到新数组上,并在新数组上进行修改,修改完成后,再将集合数组的引用指向新数组,,而读取操作仍然是访问旧的快照副本,故而实现读写分离,**实现原理是迭代器在创建时,会获取集合的计数变量当作一个标记,迭代过程中,若发现该标记大小与计数变量不一致了,就以为集合做了新增或者删除等操作,就会抛出快速失败的异常。如果父类加载器无法加载这个类,子加载器才会尝试自己去加载。
2024-11-04 12:54:38
765
1
原创 JVM-第三章-运行时数据区概述及线程
方法区和堆区一个进程一份,而一个JVM就是一个进程,程序计数器,本地方法栈,虚拟机栈,是一个线程一份。由于跨平台的设计,Java的指令都是根据栈来设计的。不同的平台CPU架构不同,所以不能设计为基于寄存器的。优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,同样的功能需要更多的指令。一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。Java堆区再JVM启动的时候即被创建,其空间大小也就确定了。是JVM管理的最大一块内存空间。堆内存的大小是可以调节的。
2024-10-27 16:11:49
797
原创 JVM-第二章-类加载子系统
工作原理沙箱安全机制:自定义类,但是在加载自定义类的时候会率先使用引导类加载其加载,而引导类加载器在加载的过程中会先加载自带的文件(包中的),报错信息说明没有main方法,就是因为加载的是rt.jar包中的String类。这样可以保证对java核心源代码的保护,这就是
2024-10-20 08:54:00
755
原创 JVM-第一章-整体架构+生命周期
零地址:只有操作数,没有操作地址【对应的有 一地址,有一个地址,一个操作数】执行一个所谓的Java程序时,真真正正在执行的是一个叫做Java虚拟机的进程。:就是将热点代码的字节码,二次编译成机器码,缓存到方法区后下次直接调用。Java 编译器输入的指令流基本上是基于一种。指令集架构完全依赖硬件,可以可移植性差。花费更少的指令完成一项操作。,另外一种指令集架构则是。性能优秀,执行效率高。
2024-10-13 08:59:37
601
原创 【无标题】
不知道有没有遇到过这样的问题,自己的websocket在本地运行的很好,没有bug但是,一旦部署到服务器上,就总是会断连,尤其是对于实时通信的共功能,很容易总是断连,最近我就遇到了一样一个问题,由于要写一个群聊功能,因此,大部分信息都是以广播的形式发出的,而这样就会造成一个问题,那就是循环,我使用将所有的在线用户循环遍历,然后逐个发送信息。在SprngBoot正常运行后,突然就不能运行了,但是代码没有任何问题,控制台也没有Error的错误,但是,接口的返回值就是。这是由于返回值类型的属性没有。
2024-09-29 13:50:24
448
原创 【无标题】
获得最大前缀等于后缀的值后,再通过改记录的位置数组,当遇到不匹配的字符时,就不要返回,直接回到上一个匹配的即可。 第 i 项 +k,从 i 项开始的后面所有项在计算时,后会 +k,因此要将 j+1项 -k。 因此,当我们求解差分数组的前缀和时,就会发现,刚好与原数列相同。:预处理一个位置数组,保存当前位置与最开始的位置的前缀等于后缀的最大长度。 差分数组就会发现,[4,6]的所有数都 +k,因为,对于。时,由于原数组 = 差分数组的前缀和,而差分数组的。
2024-09-22 10:15:13
331
原创 算法知识-递归的‘浅’理解
就是“深入”,通过有限次“相同操作”,可以使解决的问题回到最简单的基本模型。就比如:要计算3的阶乘,就要深入到2的阶乘,最后深入到简单的1的阶乘,当然最后要通过回溯解决问题,这样就将复杂重复的问题通过有限步骤的递归调用,就能达到问题的简单的形式。:就是利用上一层的结果,来提供在本层中所缺少的参数。还拿3的阶乘举例子,在本层中,3要×2×1,即3前面所有数的乘积,但是2在本层的参数中没有给出,就只能从递归的返回值获取,进入下一层递归,没有。
2024-09-15 09:30:34
987
原创 项目经历-温馨网站练习运用
我主要负责后端部分,该项目用了SpringBoot框架、SpringSecurity的安全框架、结合MyBatis-Plus的数据库查询。第二次与团队一起制作网页虽然不进行商用,但是练习一下还是好的😊😊。
2024-08-31 14:25:58
460
原创 Java基础学习-Java集合的学习
情况2,情况3:(key1,value1)和(key2,value2)构成单项链表结构,(key1,value1)指向(key2,value2)(头插法)2、将 “AA” 封装到一个 Node 对象1 中,list 对象的属性 first 、last 都指向此Node对象1。3、将 “BB” 封装到一个Node对象2 中,对象1和对象2构成一个双向链表,同时last指向此对象2。3、当添加到第 11 个元素时,需要扩容,默认扩容为原来的 2 倍,但是,可以自定义扩容的长度的。二、Vector(数组)
2024-08-29 11:31:14
427
原创 算法知识-排序、二分查找
/二分查找第一次出现的目标数字return -1;//数组为空//不包含左端点 因为将a[mid] = x 单独拉出来了,可以判断左端点(保证 r与l相等)r = mid;elsel : -1;//如果数组只有两个元素,则 r 与 l 不同,此时 r 是正确的值,r 是 -1,因此用 l//如果数组元素大于两个元素,则 l == r//二分查找最后一次出现的目标数字return -1;//数组为空。
2024-06-02 11:21:37
291
原创 Redis的基本操作
增加一个哈希类型的键 键名为 huser2 值为 (name - merry,sex-woman)两个键值对。# 向键 user1 的后面追加值 haha (user1 本来是 aaa 现在为 :aaahaha)# 增加一个哈希类型的键 键名为 huser1 值为 name - tom (也是一个键值对)索引可以为负数,表示从尾部开始计数,如:-1 表示最后个值 ,-2表倒数第二个值...# 新建一个列表的键,从左边添加值,aaa,bbb,ccc,ddd。
2024-05-25 19:09:36
783
原创 论坛项目总结
但是,这也是我第一次写项目,也是积累了好多经验,比如FTP的使用,服务器站点的创建,项目的整体结构,GIT的使用等等,在这次的项目中,由于我们是前后端不分离项目,因此也是频繁的交流,吸取经验,更好的撰写swagger文档,让前端更加充分的理解和调用接口。项目整体可以运行,但是一些细节问题没有处理的很好,比如,话题页没有返回按钮等等。
2024-05-19 16:50:32
223
原创 SpringBoot 的数据库拒绝连接
There was an unexpected error (type=Internal Server Error, status=500).nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JD
2024-05-12 14:02:30
1093
原创 SSM框架swagger的搭建
步骤三:创建SwaggerConfig配置类,并指定扫描的包。步骤二:在springMVC中添加bean对象。
2024-04-21 19:03:56
360
1
原创 GIT的基本使用
Changes to be committed: -----> 当前的文件已被追踪。2)再此执行 ---- 向暂存器中添加修改过的文件 ----- 提交到本地库。git reflog:查看精简版的信息和提交记录 ---- 版本号的前七位。on branch master ----> 在 master 分支里。on branch master ----> 在 master 分支里。new file : Hello.txt -----> 绿色。----- 将 合并的分支名 合并到当前分支。
2024-03-31 14:23:10
369
1
原创 Spring IOC - XML
scope:表示是单例模式(共用一个对象) 还是 多例模式(多个对象)2》:bean 标签中可以嵌套 property 标签,用来表示对象的属性(有set方法)new 的关键字来造对象,直接从IOC容器中获取即可。class:用于指明要管理的类(全类名)value:就是属性值。name:就是属性名。4》:获取bean对象,并调用对象的方法。1》:通过bean标签来进行类的管理。3》:bean对象的类类型的赋值。
2024-03-23 19:52:55
224
1
原创 MyBatis的学习
只需通过#{} ${} 访问实体类中的属性名,就可以获取到相应的属性值(一定要有get、set方法的属性),一定要注意${}的单引号问题。此时可以通过#{} 和 ${},{}内填充任意内容获取参数,但是,建议使用参数名。因此:只需通过 #{} ${} 访问map集合的键,就可以获取相应的参数值。使用注解改变map的键的名字,在xml页面使用改变后的键的名字。若mapper接口方法的参数为实体类类型的参数。${} : 本质是字符串拼接。的字面量类型(不是变量类型)的字面量类型(不是变量类型)
2024-03-17 18:53:24
181
1
原创 MySQL的基本简单使用
查询所有数据查询当前数据库查询当前数据库所有表查询表结构desc + 表名;查询指定表的建表语句show create table + 表名。
2024-03-10 11:08:25
720
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人