- 博客(46)
- 收藏
- 关注
原创 算法-最大公约数
原理:根据 (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
377
原创 链表求和2
题目要求:假定用链表表示两个数,其中每个节点仅包含一个数字。假设这两个数的数字顺序排列,请设计一种方法将两个数相加,并将其结果表现为链表的形式。2、再获取低位的进位,利用进位运算高位。1、先获取同阶低位,进行求和运算。3、最后判断最高位是否进位。
2025-03-16 11:26:34
194
原创 MySQL知识点(第一部分)
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎可以被称为表类型。-- 查看数据库所支持的存储引擎索引是一种有序的数据结构,用于高效的获取数据。**优点:**提高检索效率,降低IO成本。通过索引排序,降低CPU的消耗。**缺点:**索引也会占用存储空间,并且再插入和删除数据时,需要维护索引结构。
2025-03-09 18:47:07
967
原创 第六章-垃圾回收器
Serial Old收集器同样也采用了串行回收和”“Stop-the-World”机制,只不过内存回收算法使用的是标记-压缩算法。从分代上看,G1依然属于分代型垃圾回收器,它会区分年轻代和老年代,年轻代依旧有Eden区,Survivor区。中几乎可认为有划时代的意义的垃圾收集器:CMS (Concurrent-Mark-Sweep)收集器,CMS 的垃圾收集器,算法采用标记-清除算法,并且也会“Stop-the-world”CMS 收集器的关注点是尽可能短的垃圾收集时,用户线程的停顿时间。
2024-12-02 10:06:39
862
原创 我的生活记(dz-cn)
我先说(吐槽)一下过去的一周,从2024/11/4开始到2024/11/10,不是我说,事情是真的多,软件著作权申请的材料准备,官网项目的工作推进,小组的集会聚餐,博客的评选评分,线性代数的期中考试,创新创业大赛的参加,JVM的学习等,所以也可以看到,上次更新的JVM的第三章后就暂时没有后续了,因为当时的事情实在是太多了,没有时间去弄这个了。,让我能回味一下,如今(大二上学期 2024/11/10),还不太清楚,我下一次看到这篇文章的时候是什么时间,在此,我就在多留下一个时间的痕迹,以便来日寻找,
2024-11-10 13:25:27
387
原创 Java 面试题
该机制的实现,是通过迭代器在创建时,对集合进行了快照操作,即迭代器遍历的是原集合的数组快照副本,若在这个过程,集合进行修改操作,会将原有的数组内容复制到新数组上,并在新数组上进行修改,修改完成后,再将集合数组的引用指向新数组,,而读取操作仍然是访问旧的快照副本,故而实现读写分离,**实现原理是迭代器在创建时,会获取集合的计数变量当作一个标记,迭代过程中,若发现该标记大小与计数变量不一致了,就以为集合做了新增或者删除等操作,就会抛出快速失败的异常。如果父类加载器无法加载这个类,子加载器才会尝试自己去加载。
2024-11-04 12:54:38
754
1
原创 第三章:运行时数据区概述及线程
方法区和堆区一个进程一份,而一个JVM就是一个进程,程序计数器,本地方法栈,虚拟机栈,是一个线程一份。由于跨平台的设计,Java的指令都是根据栈来设计的。不同的平台CPU架构不同,所以不能设计为基于寄存器的。优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,同样的功能需要更多的指令。一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。Java堆区再JVM启动的时候即被创建,其空间大小也就确定了。是JVM管理的最大一块内存空间。堆内存的大小是可以调节的。
2024-10-27 16:11:49
785
原创 第二章:类加载子系统
工作原理沙箱安全机制:自定义类,但是在加载自定义类的时候会率先使用引导类加载其加载,而引导类加载器在加载的过程中会先加载自带的文件(包中的),报错信息说明没有main方法,就是因为加载的是rt.jar包中的String类。这样可以保证对java核心源代码的保护,这就是
2024-10-20 08:54:00
744
原创 JVM第一章
零地址:只有操作数,没有操作地址【对应的有 一地址,有一个地址,一个操作数】执行一个所谓的Java程序时,真真正正在执行的是一个叫做Java虚拟机的进程。:就是将热点代码的字节码,二次编译成机器码,缓存到方法区后下次直接调用。Java 编译器输入的指令流基本上是基于一种。指令集架构完全依赖硬件,可以可移植性差。花费更少的指令完成一项操作。,另外一种指令集架构则是。性能优秀,执行效率高。
2024-10-13 08:59:37
594
原创 【无标题】
不知道有没有遇到过这样的问题,自己的websocket在本地运行的很好,没有bug但是,一旦部署到服务器上,就总是会断连,尤其是对于实时通信的共功能,很容易总是断连,最近我就遇到了一样一个问题,由于要写一个群聊功能,因此,大部分信息都是以广播的形式发出的,而这样就会造成一个问题,那就是循环,我使用将所有的在线用户循环遍历,然后逐个发送信息。在SprngBoot正常运行后,突然就不能运行了,但是代码没有任何问题,控制台也没有Error的错误,但是,接口的返回值就是。这是由于返回值类型的属性没有。
2024-09-29 13:50:24
426
原创 【无标题】
获得最大前缀等于后缀的值后,再通过改记录的位置数组,当遇到不匹配的字符时,就不要返回,直接回到上一个匹配的即可。 第 i 项 +k,从 i 项开始的后面所有项在计算时,后会 +k,因此要将 j+1项 -k。 因此,当我们求解差分数组的前缀和时,就会发现,刚好与原数列相同。:预处理一个位置数组,保存当前位置与最开始的位置的前缀等于后缀的最大长度。 差分数组就会发现,[4,6]的所有数都 +k,因为,对于。时,由于原数组 = 差分数组的前缀和,而差分数组的。
2024-09-22 10:15:13
326
原创 递归的‘浅’理解
就是“深入”,通过有限次“相同操作”,可以使解决的问题回到最简单的基本模型。就比如:要计算3的阶乘,就要深入到2的阶乘,最后深入到简单的1的阶乘,当然最后要通过回溯解决问题,这样就将复杂重复的问题通过有限步骤的递归调用,就能达到问题的简单的形式。:就是利用上一层的结果,来提供在本层中所缺少的参数。还拿3的阶乘举例子,在本层中,3要×2×1,即3前面所有数的乘积,但是2在本层的参数中没有给出,就只能从递归的返回值获取,进入下一层递归,没有。
2024-09-15 09:30:34
971
原创 温馨网站练习运用
我主要负责后端部分,该项目用了SpringBoot框架、SpringSecurity的安全框架、结合MyBatis-Plus的数据库查询。第二次与团队一起制作网页虽然不进行商用,但是练习一下还是好的😊😊。
2024-08-31 14:25:58
451
原创 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
417
原创 算法学习(01)
/二分查找第一次出现的目标数字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
285
原创 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
777
原创 论坛项目总结
但是,这也是我第一次写项目,也是积累了好多经验,比如FTP的使用,服务器站点的创建,项目的整体结构,GIT的使用等等,在这次的项目中,由于我们是前后端不分离项目,因此也是频繁的交流,吸取经验,更好的撰写swagger文档,让前端更加充分的理解和调用接口。项目整体可以运行,但是一些细节问题没有处理的很好,比如,话题页没有返回按钮等等。
2024-05-19 16:50:32
216
原创 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
1037
原创 SSM框架swagger的搭建
步骤三:创建SwaggerConfig配置类,并指定扫描的包。步骤二:在springMVC中添加bean对象。
2024-04-21 19:03:56
344
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
363
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
218
1
原创 MyBatis的学习
只需通过#{} ${} 访问实体类中的属性名,就可以获取到相应的属性值(一定要有get、set方法的属性),一定要注意${}的单引号问题。此时可以通过#{} 和 ${},{}内填充任意内容获取参数,但是,建议使用参数名。因此:只需通过 #{} ${} 访问map集合的键,就可以获取相应的参数值。使用注解改变map的键的名字,在xml页面使用改变后的键的名字。若mapper接口方法的参数为实体类类型的参数。${} : 本质是字符串拼接。的字面量类型(不是变量类型)的字面量类型(不是变量类型)
2024-03-17 18:53:24
178
1
原创 MySQL的基本简单使用
查询所有数据查询当前数据库查询当前数据库所有表查询表结构desc + 表名;查询指定表的建表语句show create table + 表名。
2024-03-10 11:08:25
716
1
原创 MySQL的学习
insert into 表名 (字段1,字段2,字段3,...字段4) values (值1,值2,值3,值4,值5),(值1,值2,值3,值4,值5),(值1,值2,值3,值4,值5);insert into 表名 values (值1,值2,值3,值4,值5),(值1,值2,值3,值4,值5)...,(值1,值2,值3,值4,值5);insert into 表名 (字段1,字段2,字段3,...字段4) values (值1,值2,值3,值4);delete from 表名 [where 条件];
2024-03-03 16:01:15
801
原创 基本EasyX学习之谈
将变量输出到图形化界面:outtextxy(int x , int y , str);- 输出字符串:outtextxy(int x , int y , L"HelloWord!= 不带边框:solidcircle(int x , int y, int r)= 带边框:fillcircle(int x, int y, int ,r)- 画直线:line(int x1 , int y1, int x2, int y2)+ 空心圆:circle(int x,int y, int r)= x:圆心的横坐标。
2023-12-31 15:57:48
2072
原创 杂谈remove
remove()方法删除的内容,不会在ArrayList的数组中留下痕迹。即:是彻底删除了,并不是将是要删除的内容赋值为空。例如:在删除了list里面的0好元素后,对应的数组长度也缩小了。
2023-12-23 16:30:11
365
1
原创 File类与IO流
》public File(String parent , String child):以parent为父路径,child为子路径创建。* 》public File(File parent , String child):根据一个父类File对象和子文件路径创建。将内存中的java对象保存在文件中或通。将文件中的数据还原为内存。* * 绝对路径:以windows操作系统为例,包括盘符在内的文件或文件目录的完整路。
2023-12-17 17:10:24
1735
1
原创 异常的理解
配,一旦匹配上,就进入语句块中进行处理,一旦处理结束,代码就可以继续。法所抛出的异常要与父类异常相同,或者是其的子类,否则 会出错。如果父类的方法没有抛出异常,则子类中重写的该方法也不。能抛出异常,如果父类的方法抛出了异常,则子类重写的方。类的要重写的方法抛出的异常相同,或者是子类,即,, 一般不编写针对性的代码进行处理,即回去改代码,这里处理不了了。对应的异常的对象,将此对象抛出,类的对象只能捕获父类所抛出的异常,但是,执行的是子类中重写发。的方法,该方法如果抛出的异常大于父类的异常,则虽然编译通过,
2023-12-09 20:45:34
838
1
原创 超链接&盒子模型
border-bottom-style: 也可以直接指定。- border-right-style: 也可以直接指定。- border-left-style: 也可以直接指定。- 如果只将左和右设置为auto,则会使盒子居中。- border-top-style: 也可以直接指定。- border-style: 边框样式 ---> 可以指定四个边框(填四个。- border-width: 边框高度 ---> 可以指定四个边框。- border-bottom-width: 也可以直接指定。
2023-12-02 16:17:12
1606
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人