自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 收藏
  • 关注

原创 一些小问题

随机删除元素 更适合使用LinkedList 添加删除复杂度为O(1)查询为O(n)需要从头部或者尾部开始遍历链表来查找元素。select count(1)最快、count(*)第二、count(column)第三。hashMap的初始容量 16 负载因子是 0.75。java允许定义一个父类的引用指向子类的对象。返回结果集中的行数、对每一行的所有列进行计数。频繁查询选择 ArrayList。返回指定列中不为null的行数。

2024-04-09 16:38:12 113

原创 Java八股-3

浅拷贝:会在堆上创建一个新的对象,不过如果原来对象的内部属性是引用类型的话,浅拷贝会直接复制内部对象的地址,就是说“浅拷贝对象和原对象共用一个内部对象”深拷贝:会完全复制整个对象,包括原对象所包含的内部对象引用拷贝:就是两个不同的引用,指向同一个对象如果两个对象的hashCode值相等,那这两个对象不一定相等(哈希碰撞)如果两个对象的hashCode值相等,并且equals()方法也返回true,才认为这两个对象相等如果两个对象的hashCode值不相等,可以直接认为这两个对象不相等。

2024-04-09 16:36:28 1096

原创 某次笔试记录

wait,notify,notifyAll必须在同步代码块或同步方法中调用,并且与对象锁相关联,以确保线程安全。wait()方法会释放当前线程持有的对象锁,并将线程置于等待状态,直到被其他线程调用notify方法唤醒。alter table 表名 rename column 原名 to 新名。线程等待时要恢复调用,用notify()方法或者notifyAll()方法。抽象性,不能被实例化,用于实现多态,用于约束子类或实现类。List创建对象后大小可变。枚举类型 String类型。http默认端口号80。

2024-03-30 17:54:38 208

原创 LeetCode第六天(15. 三数之和)

【代码】LeetCode第六天(15. 三数之和)

2024-03-30 10:52:40 215

原创 LeetCode第五天(442. 数组中重复的数据)

当遍历到位置 i时,如果 nums[i]−1≠i,说明 nums[i]出现了两次(另一次出现在位置 num[i]−1),我们就可以将 num[i]\textit{num}[i]num[i] 放入答案。放置的方法也很直观:我们对数组进行一次遍历。如果 nums[nums[i]−1] 是正数,说明 nums[i]还没有出现过,我们将 nums[nums[i]−1] 加上负号;如果 nums[nums[i]−1]是负数,说明 nums[i]已经出现过一次,我们将 nums[i]放入答案。

2024-03-27 23:02:54 317

原创 Java八股-2

获取到的某个方法体中的代码执行后产生的结果,返回值的作用是接收结果,使得它可以用于其他的操作。类型:无参无返回值、无参有返回值、有参无返回值、有参有返回值。Java5开始,支持定义可变长参数,就是允许在调用方法时传入补丁长度的参数。

2024-03-27 17:54:34 493

原创 LeetCode第四天(448. 找到所有数组中消失的数字)

【代码】LeetCode第四天(448. 找到所有数组中消失的数字)

2024-03-26 18:26:23 257

原创 LeetCode第四天(697. 数组的度)

在实际代码中,我们使用哈希表实现该功能,每一个数映射到一个长度为 333 的数组,数组中的三个元素分别代表这个数出现的次数、这个数在原数组中第一次出现的位置和这个数在原数组中最后一次出现的位置。所以为了找到这个子数组,我们需要统计每一个数出现的次数,同时还需要统计每一个数第一次出现和最后一次出现的位置。记原数组中出现次数最多的数为 xxx,那么和原数组的度相同的最短连续子数组,必然包含了原数组中的全部 xxx,且两端恰为 xxx 第一次出现和最后一次出现的位置。

2024-03-26 15:51:09 187

原创 Java八股-1

在Java中,JVM可以理解的代码就叫做字节码,就是.class文件,不面向任何特定的处理器,只面向虚拟机。通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问题,同时又保留了解释型语言可移植的特点,所以Java程序运行时相对高效;而且字节码不针对一种特定的机器,Java程序无需重新编译就可以在多种不同操作系统的计算机上运行。

2024-03-26 12:59:28 1052

原创 LeetCode第三天(645. 错误的集合)

重复的数字在数组中出现 2 次,丢失的数字在数组中出现 0 次,其余的每个数字在数组中出现 1 次。因此可以使用哈希表记录每个元素在数组中出现的次数,然后遍历从 1 到 n 的每个数字,分别找到出现 2 次和出现 0 次的数字,即为重复的数字和丢失的数字。如果丢失的数字大于 1 且小于 n,则一定存在相邻的两个元素的差等于 2,这两个元素之间的值即为丢失的数字;不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合。如果 nums[n−1]≠n,则丢失的数字是 n。

2024-03-24 23:52:20 309

原创 LeetCode第二天(628. 三个数的最大乘积)

给你一个整型数组nums,在数组中找出由三个数组成的最大乘积,并输出这个乘积。我的答案:(只通过了63个用例,没考虑到两个负数相乘得正的情况)首先将数组排序。如果数组中全是非负数,则排序后最大的三个数相乘即为最大乘积;如果全是非正数,则最大的三个数相乘同样也为最大乘积。如果数组中有正数有负数,则最大乘积既可能是三个最大正数的乘积,也可能是两个最小负数(即绝对值最大)与最大正数的乘积。

2024-03-23 11:01:20 208

原创 某笔试题记录

接口本身就是抽象的,因此不需要显式地使用 abstract 修饰符来声明。接口中的方法默认都是抽象的。

2024-03-22 18:32:44 749

原创 LeetCode第一天(414.第三大的数)

具体做法是每遍历一个数,就将其插入有序集合,若有序集合的大小超过 3,就删除集合中的最小元素。这样可以保证有序集合的大小至多为 3,且遍历结束后,若有序集合的大小为 3,其最小值就是数组中第三大的数;若有序集合的大小不足 3,那么就返回有序集合中的最大值。将数组从大到小排序后,从头开始遍历数组,通过判断相邻元素是否不同,来统计不同元素的个数。如果能找到三个不同的元素,就返回第三大的元素,否则返回最大的元素。中添加已经存在的元素,那么该元素将不会被重复添加。)元素的有序集合,它按照元素的自然顺序进行排序。

2024-03-22 17:23:47 217

原创 LeetCode第一天(495.提莫攻击)

如果当前他正处于未中毒状态,则此时他的中毒持续时间应增加 duration\textit{duration}duration​,同时更新本次中毒结束时间 expired\textit{expired}expired​ 等于 timeSeries[i]+duration\textit{timeSeries}[i] + \textit{duration}timeSeries[i]+duration​;我们将每次中毒后增加的持续中毒时间相加即为总的持续中毒时间。当提莫攻击艾希,艾希的中毒状态正好持续。

2024-03-22 16:54:33 452 1

原创 LeetCode第一天(485.最大连续1的个数)

如果当前元素是 111,则将当前的连续 111 的个数加 111,否则,使用之前的连续 111 的个数更新最大的连续 111 的个数,并将当前的连续 111 的个数清零。遍历数组结束之后,需要再次使用当前的连续 111 的个数更新最大的连续 111 的个数,因为数组的最后一个元素可能是 111,且最长连续 111 的子数组可能出现在数组的末尾,如果遍历数组结束之后不更新最大的连续 111 的个数,则会导致结果错误。

2024-03-22 16:52:44 341

原创 idea创建git仓库

选择根目录:点ok,就创建好了推送到本地仓库:

2024-03-13 21:47:53 375

原创 nginx启动闪退

在nginx目录下cmd,nginx -t,找到原因是:“在端口80上运行NGINX时,因为端口80是HTTP默认端口,需要管理员权限才能访问”在nginx.conf文件中,修改listen:80为8080。

2024-03-13 18:02:20 344

原创 boot应用打包

1.Path:添加下面的值。3.native构建。

2024-03-11 14:56:45 244

原创 使用GraaVIM打包Linux平台本地镜像

把GraaVIM的bin目录配置到环境变量里面(不配置的话,java命令不能在任意位置运行)4.下载安装配置Linux下的GraaVIM、native-image。- 解压完成看一下目录下的文件是否正确(看不看都行)-打包:(使用-cp命令,将jar包输出为Demo)安装: GraaVIM、native-image。-配置:JAVA环境变为GraaVIM。-把压缩包解压到刚刚创建的目录下。-执行:(Linux下执行)使用ls命令查看是否上传成功。-创建目录存放java环境。

2024-03-11 10:48:24 596

原创 Redis整合

RedisTemplate、StringRedisTemplate: 操作redis的工具类。

2024-03-05 15:43:46 436

原创 WindTerm上传文件

2024-03-04 23:08:03 1098

原创 VMware虚拟机安装Linux

重启完成之后出现下面的界面,接受许可证。开始安装,输入ROOT密码,创建用户。点进安装位置,点完成就可以了。一般root用户权限比较大。选择下面的GNOME桌面。网络连接,右上角打开。

2024-03-03 21:47:48 247

原创 SpringBoot3-核心原理

抽取聊天机器人场景,它可以打招呼。效果:任何项目导入此starter都具有打招呼功能,并且问候语中的人名需要可以在配置文件中修改1. 创建自定义starter项目,引入基础依赖2. 编写模块功能,引入模块所有需要的依赖。3. 编写自动配置类,帮其他项目导入这个模块需要的所有组件4. 编写配置文件指定启动需要加载的自动配置5. 其他项目引入即可使用。

2024-03-02 18:34:35 870

原创 SpringBoot3-基础特性

类路径添加banner.txt或设置spring.banner.location就可以定制 bannerSpring Boot banner 在线生成工具,制作下载英文 banner.txt,修改替换 banner.txt 文字实现自定义,个性化启动 banner-bootschool.net。

2024-03-01 20:15:40 784

原创 SpringBoot3-数据访问

文件中配置的所有值,就是要开启的自动配置类,但是每个类可能有条件注解,基于条件注解判断哪个自动配置类生效了。安装MyBatisX 插件,帮我们生成Mapper接口的xml文件即可。如何分析哪个场景导入以后,开启了哪些自动配置类。三大框架整合操作数据库最先要配置的是数据库。SpringBoot 整合。mapper接口扫描。

2024-02-29 11:36:18 1116

原创 SpringBoot3-Web开发

自定义静态资源路径、自定义缓存规则导入依赖把对象写出成YAMLperson.setUserName("张三");编写配置#新增一种媒体类型增加组件,专门负责把对象写出为yaml格式@Bean@Override //配置一个能把对象转为yaml的messageConverter使用@ControllerAdvice + @ExceptionHandler 进行统一异常处理根据boot的错误页面规则,自定义页面模板切换服务器;

2024-02-28 21:38:33 826

原创 3.日志配置

Spring使用commons-logging作为内部日志,但底层日志实现是开放的。可对接其他日志框架。SpringBoot怎么把日志默认配置好的1、每个starter场景,都会导入一个核心场景2、核心场景引入了日志的所用功能3、默认使用了组合作为默认底层日志4、日志是系统一启动就要用是系统启动好了以后放好的组件,后来用的。5、日志是利用监听器机制配置好的。。6、日志所有的配置都可以通过修改配置文件实现。以logging开始的所有配置。

2024-01-17 20:02:26 953

原创 使用国内镜像源安装Pyqt5

但是由于安装默认使用国外的镜像,可能因为网络问题会导致下载慢或者失败的现象。所以我们可以使用国内的镜像,比如豆瓣提供的镜像。只需要加上“-i https://pypi.douban.com/simple”参数。

2023-12-16 00:06:41 1225

原创 使用国内镜像源安装opencv

粘贴以下代码,用来查看当前Python环境中OpenCV的版本号。,进入Python编译环境;

2023-12-15 23:25:31 3743 1

原创 如何实现自己的训练集

在anaconda prompt中查看(conda info -e)、删除(conda remove -naimbot_env)虚拟环境其中aimbot_env是虚拟环境的名字是否要删掉?选y创建虚拟环境(conda create -n aimbot_env python==3.7.4)已经存在环境是否创建?选择y这里创建太慢的话可能是没有配置合适的源channels:-defaults搜索yolov5的源码然后下载下载好之后项目用pycharm打开。

2023-12-14 19:55:15 1007

原创 安装anaconda

配置环境变量(图中五个都要配置)

2023-12-12 16:37:28 418

原创 安装python

输入python检查是否安装成功。选择可执行文件安装包。

2023-12-12 15:54:28 470

原创 SpringBoot快速体验

1、导入。

2023-11-28 23:32:10 1167

原创 Not registered via @EnableConfigurationProperties, marked as Spring component, or scanned via

【代码】Not registered via @EnableConfigurationProperties, marked as Spring component, or scanned via。

2023-11-15 17:58:32 92

原创 Initialization failed for ‘https://start.spring.io‘ springboot创建项目失败

打开Settings-->搜索HTTP Proxy-->输入https://start.spring.io (图上步骤)://start.spring.io改成。如果不行的话,可以把。

2023-11-14 23:11:44 335

原创 SpringBoot 是什么

大多数 SpringBoot 应用只需要编写少量配置即可快速整合 Spring 平台以及第三方技术。SpringBoot 帮我们简单、快速地创建一个独立的、生产级别的。可选的starter。

2023-11-14 22:10:52 132

原创 提前编译:AOT

IT和AOT这个名词是指两种不同的编译方式,这两种编译方式的在于在程序运行时,根据算法计算出热点代码,然后进行JIT实时编译,这种方式吞吐量高,有运行时性能加成,可以跑得更快,并可以做到动态生成代码等,但是,并需要一定时间和调用频率才能触发JIT 的分层机制。JIT缺点就是编译需要占用运行时资源,会导致进程卡顿。AOT编译能直接将源代码转化为机器码,内存占用低,启动速度快。

2023-11-14 18:26:50 137

原创 自定义校验

【代码】自定义校验。

2023-11-14 17:19:06 38

原创 properties文件乱码

按照步骤修改编码方式就可以解决啦。修改之后结果就是下面这样~

2023-11-14 00:00:25 122

原创 数据校验:Spring Validation

return age;@NotNull 限制必须不为null@NotEmpty 只作用于字符串类型,字符串不为空,并且长度不为0@NotBlank 只作用于字符串类型,字符串不为空,并且trim0后不为空串@DecimalMax(value) 限制必须为一个不大于指定值的数字@DecimalMin(value) 限制必须为一个不小于指定值的数字@Max(value) 限制必须为一个不大于指定值的数字。

2023-11-13 23:59:15 491

关于智慧校园的sql文件

关于智慧校园的sql文件

2024-03-11

主题微信.mm

主题微信.mm

2022-11-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除