自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

努力学习的DS

学的越多,越觉无知

  • 博客(390)
  • 资源 (3)
  • 收藏
  • 关注

原创 dfs递归回溯的两种体型

个人思路:不像前面的全排列,按排列的位置应该放什么元素这种思路,而是直接看看nums中的每个元素是选还是不选,往下dfs的话就看看下一个nums的元素是选还是不选。个人思路:可以枚举排列中每一个位置pos应该放什么元素,往下dfs就看看下一个位置pos放什么元素。

2025-04-03 15:04:43 52

原创 Drools 议程组(AgendaGroup)执行顺序实验

我们定义两个规则,分别属于report议程组 和议程组,每个规则触发时都会打印日志并记录执行顺序。

2025-02-22 19:48:40 264

原创 个人对于“回调”的理解

回调:任务完成后调用入参的函数(回调函数)

2025-01-20 17:02:55 88

原创 接口开发完后,个人对于接下来接口优化的一些思考

连接池的原理是通过预先创建一定数量的连接对象,并将其保存在池中。当需要使用连接时,从池中获取一个可用的连接对象,使用完毕后归还给池,而不是每次都创建和销毁连接对象。使用缓存虽然可以提升用户体验,但是也会带来其他问题,如数据一致性问题。还有缓存穿透、缓存击穿、缓存雪崩、缓存淘汰等问题。批量查询只产生2条SQL,不限于读取(批量读取),写入(批量写入)也是一样的。并行思想:把大任务拆分多个子任务,让多个子任务同时执行(人多力量大)数据量大的时候,使用压缩算法减少传输数据的时间。因为没有入参,所以不需要考虑。

2025-01-03 10:32:09 708

原创 【KMP】算法模板

【代码】【KMP】算法模板。

2024-12-28 14:44:20 122

原创 【极速2.0】初识电商ERP

传统商业活动借助互联网媒介过度到电子商务什么是电商ERP?小结重点

2024-12-19 10:41:58 240

原创 字节高频算法面试题:小于 n 的最大数

先对nums倒序排序 + 暴力回溯 + 剪枝优化。

2024-12-07 17:29:53 517

原创 个人对于“索引下推”的理解

索引下推?MySQL的架构层次答:MySQL架构可以简单分为Server层和存储引擎这两层。Server层上接和客户端的交互,下接与存储引擎的数据交互,存储引擎则负责数据的存储和读取。举例:useridusernamezipcodebirthdateid),KEYzipcodebirthdate然后执行查询注意这里用了日期函数,索引会失效。

2024-11-24 14:53:38 930

原创 Feign:服务挂了也不会走fallback

Feign 本质上是一个 HTTP 客户端,用于简化微服务之间的 HTTP 通信。它允许开发者通过定义接口和注解来声明式地编写 HTTP 客户端,而无需手动编写 HTTP 请求和响应处理的代码。今天在模拟微服务A feign调用微服务B的时候,把微服务B关了,可是调用的时候不会走fallback降级方法。配置文件已经开启了Feign与Sentinel的集成,启用熔断降级。服务A使用Feign去调用另一个服务B。后面发现是没加sentinel依赖。

2024-09-28 19:37:08 589 1

原创 优化后的快速排序(二路快速排序)

【代码】优化后的快速排序(二路快速排序)

2024-09-21 12:09:40 189

原创 webContextUnify的作用

为了更好理解spring.cloud.sentinel.webContextUnify的作用,我直接提供一个详细的场景,包括完整的目录结构和URL路径。

2024-08-28 14:08:10 683

原创 排查Maven问题的步骤

2.使用清楚工具将所有的lastupdate清除,4.有了私服地址,但是还是下载不到。—>拷贝同事仓库,覆盖自己的仓库。1.检查IDEA中配置是否正确。0.检查pom文件完整性。3.有些依赖是公司的依赖。—>查看地址是否能访问。

2024-08-24 18:39:18 438

原创 Bean对象生命周期流程图

Bean生命周期流程图:https://www.processon.com/view/link/5f8588c87d9c0806f27358c1

2024-08-19 11:18:15 360

原创 maven配置 + IDEA集成自己配置的maven

我把JAVA_HOME换成1.8的,因为Java版本从17换成1.8我觉得可能好一些。4. 把bin目录加入到系统变量的 Path 环境变量当中。字节码版本换成8(JDK8,java1.8,java 8)6. IDEA就该项目更换maven。JRE版本也要是1.8。

2024-08-09 21:20:12 619 2

原创 MySQL事务隔离级别、InnoDB使用MVCC+各种锁实现了RC和RR事务隔离级别、具体案例

对于 一致性非锁定读(Consistent Nonlocking Reads)open in new window的实现,通常做法是加一个版本号或者时间戳字段,在更新数据的同时版本号 + 1 或者更新时间戳。查询时,将当前可见的版本号与对应记录的版本号进行比对,如果记录的版本小于可见版本,则表示该记录可见。相反地,InnoDB 存储引擎会去读取行的一个快照数据,对于这种读取历史数据的方式,我们叫它快照读 (snapshot read)。在锁定读下,读取的是数据的最新版本,这种读也被称为。

2024-08-07 11:45:30 908

原创 jmap的使用

jmap 是 Java Memory Map 的缩写。它是 Java Development Kit (JDK) 提供的一个命令行工具,用于生成有关 Java 虚拟机 (JVM) 内存使用情况的详细信息,包括堆内存快照和垃圾收集的统计数据。这些信息对于内存诊断和调优非常有用。

2024-08-02 13:24:22 1189

原创 System.identityHashCode(Object obj) 和 obj.hashCode() 的区别

【代码】System.identityHashCode(Object obj) 和 obj.hashCode() 的区别。

2024-07-26 15:43:31 430

原创 Java内存分析

方法是类初始化方法(class initializer),它由编译器生成,用于执行类的静态初始化块和静态变量的赋值。类构造器()方法是由编译期自动收集类中所有类变量的赋值动作和静态代码块中的语句合并产生的。(类构造器是构造类信息的,不是构造该类对象的构造器)类构造器()方法是由编译期自动收集类中所有类变量的赋值动作和静态代码块中的语句合并产生的。当初始化一个类的时候,如果发现其父类还没有进行初始化,则需要先触发其父类的初始化。A 类的实例对象,创建时调用了 A 类的构造方法,输出 A类的无参构造初始化。

2024-07-23 21:25:17 770

原创 Java 8引入的Lambda表达式

Java 8的一大亮点就是引入了Lambda表达式,使用它可以替代我们以前经常写的匿名内部类来实现接口。Lambda表达式本质是一个匿名函数。

2024-07-21 16:54:26 937

原创 在Java中,内部类分为两种主要类型:非静态内部类和静态内部类

非静态内部类 B 持有对它的外部类 A 实例的隐式引用,也就是可以访问外部类的所有成员变量和方法,包括私有成员。非静态内部类 B 的字节码文件命名为 A$B.class。只能访问外部类的静态成员,不能直接访问外部类的实例成员。静态内部类 C 的字节码文件命名为 A$C.class。静态内部类 C 没有对外部类 A 实例的隐式引用。

2024-07-18 16:49:41 273

原创 189. 轮转数组 --- 多种方式解题

还要想到 nums = {1,2,3,4}, k = 2的情况。

2024-07-12 15:23:42 175

原创 wait和sleep在同步方面的区别

在 Java 中,wait和sleep都用于让线程进入等待状态,但它们在同步操作和线程管理方面有显著区别。

2024-07-08 18:40:51 631

原创 Java线程死锁及解决方法(Jstack)

多线程环境下,死锁即两个或两个以上的线程去争夺同一个共享资源,而导致互相等待的情况。

2024-07-08 13:10:53 1791

原创 用ThreadLocal解决线程隔离问题

结果:使用ThreadLocal解决上面线程隔离问题。结果:如果使用也可以完成一样的效果,但是却牺牲了程序的并发性。另一个需求场景:弊端使用ThreadLocal相比常规的解决方案的优势。

2024-07-07 21:46:28 1020

原创 Java引用的4种类型:强、软、弱、虚

在Java中,引用的概念不仅限于强引用,还包括软引用、弱引用和虚引用(也称为幻影引用)。这些引用类型主要用于不同的内存管理策略,尤其是在垃圾收集过程中。

2024-07-07 21:01:47 610

原创 ThreadPoolExecutor - 管理线程池的核心类

行为:支持定时任务和周期性任务的线程池,核心线程数由 corePoolSize 决定,超出线程池和等待队列容量的任务会被拒绝并抛出异常。线程池可根据需求动态创建新的非核心线程,闲置超过 10 毫秒的线程会被终止并移出缓存,虽然话是这么说,但是由于 DelayedWorkQueue 是一个无界队列,通常情况下不会出现任务队列满的情况,因此非核心线程在 ScheduledThreadPoolExecutor 中被使用的机会较少,就主要还是依赖。换句话说,生产者线程和消费者线程必须直接在队列上进行任务的交接。

2024-07-07 14:00:45 1045

原创 String类对象比较:==和equals的具体细节

【代码】String类对象比较:==和equals的具体细节。

2024-07-06 20:40:39 218

原创 Object的常用方法

【代码】Object的常用方法。

2024-07-05 21:05:39 168

原创 Bean类的设计规范:Bean规范

Bean规范类要求必须含有无参,公共的构造方法属性必须私有化,然后提供公共的 set 和 get 方法

2024-07-05 20:08:15 166

原创 匿名内部类

下面代码中,Person24 是一个抽象类,这意味着它不能被直接实例化,只能通过继承它的子类来实现其抽象方法。代码片段中展示了如何使用匿名内部类来实现一个抽象类的实例。下面代码片段中展示了如何使用匿名内部类来实现一个接口的实例。

2024-07-05 19:38:52 183

原创 Java接口和类

【代码】Java接口和类。

2024-07-05 16:34:51 184

原创 Java final关键字

Java提供了一种语法,可以在数据初始化后不被修改,使用关键字final,一般将final修饰的变量称之为常量,或者叫不可变变量。

2024-07-05 15:06:19 243

原创 四种封装 ThreadPoolExecutor 的线程池的使用以及直接使用 ThreadPoolExecutor ,优缺点分析

下面是手动创建线程和执行任务过程,可见挺麻烦的,而且线程利用率不高。池化思想:线程池、字符串常量池、数据库连接池。

2024-07-05 13:07:15 443

原创 Runnable和Callable的使用

【代码】Runnable和Callable的使用。

2024-07-04 20:39:29 492

原创 Java线程

但是Thread的下面三行run方法被重写了,也就不用管Runnable类的target了,虽然Runnable类的target的run方法被重写了,所以没机会执行Runnable类的target的run方法了。创建了一个实现了 Runnable 接口的匿名内部类的对象,然后这个Runnable类的匿名内部类的对象被传给Thread的target。在 Java 中,创建并启动一个新的线程通常有两种主要的方式:继承 Thread 类和实现 Runnable 接口。ps:若两个同时使用呢?

2024-07-04 19:47:58 468

原创 x.java => 字节码文件x.class => 运行

javac.exe.java.class字节码java.exe.class字节码.class字节码。

2024-07-04 09:45:44 239

原创 Java IO - 文件流、文件复制、缓冲流、字符流

【代码】Java IO - 文件流、文件复制、缓冲流、字符流。

2024-07-03 20:39:36 124

原创 Unicode 和 UTF-8 以及它们之间的关系

Unicode就像是一个图书馆的目录系统,给每个字符一个唯一编号。UTF-8是把这些字符打包成字节的小盒子的规则,用不同大小的盒子装不同的字符。通过这种方式,我们可以把世界上所有的字符(Unicode 和 UTF-8 使得我们能够处理几乎所有语言的字符)都打包并传输到任何地方(无论你在世界的哪个地方,使用什么设备或应用程序,只要它们支持 Unicode 和 UTF-8,就能够正确地识别和显示这些字符),而不会弄混淆。

2024-07-03 16:40:23 517

原创 for循环中list触发fast-fail或不触发的原理和方法

想要在循环时进行增删操作,也就是进行这类对集合结构性有影响的操作,就要保证数据隔离性,下面是三种数据隔离性的处理方式,本质都是复制东西,只是复制的东西有所不同。首先两者拿的是同一个迭代器,并且两者不同步,一个都遍历结束了,另一个都还没开始就无法遍历集合了,但是他本来循环从头开始遍历集合的所有数据的。for-each循环对集合进行增删也可能抛出异常,因为for-each在反编译下可以发现就是迭代器的语法糖,所以涉及到对迭代器的使用。比如有两个线程都需要使用迭代器进行遍历集合的操作,如果通过直接实现。

2024-07-03 13:05:44 1501

原创 TreeMap 和 TreeSet 的基本情况、特性以及使用场景,并对比它们与 HashMap 和 HashSet

选择TreeSetTreeMapHashSet或HashMap需要有序集合/映射,范围查询:选择TreeSet或TreeMap。需要快速查找、插入和删除,无序要求:选择HashSet或HashMap。理解各自的特性和使用场景,能够更高效地解决问题。

2024-06-30 18:51:19 551

数据集UCF101 + CRNN模型 + 模型预测结果

使用UCF101完成的视频动作分类识别,使用CRNN模型完成,迭代次数为120,花了很多时间和钱(),不过因为模型参数pth太大了,优快云放不下,需要再私聊吧

2023-05-06

数据集UCF101 + Conv3D模型 + 模型预测结果

使用UCF101完成的视频动作分类识别,使用Conv3D模型完成,不过因为模型参数pth太大了,优快云放不下,需要私聊吧

2023-05-05

复杂网络的任意子节点间的网络最短距离的求解 最小斯坦纳树---python代码(含输入数据、绘图代码、解题代码、csv生成文件)

复杂网络的任意子节点间的网络最短距离的求解 最小斯坦纳树---python代码(含输入数据、绘图代码、解题代码、csv生成文件)

2022-06-02

随机点号器 v.1.0.cpp

C++实现随机点名器 版本v1.0 1.支持文件读入(txt文本文件) 2.支持手动输入 3.不重复点名

2020-05-04

连点器1.0.exe

挺有意思的鼠标连点器~ *支持锁定和解锁鼠标位置; *貌似BUG有点多,而且按键有时候控制不了 *希望今后可以改善下

2020-02-20

空空如也

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

TA关注的人

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