自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Neo4j 入门到精通(Cypher语言详解)

Neo4j是一款开源图数据库,采用节点、关系和属性存储数据,支持高效的复杂关系查询。它提供ACID事务、集群部署和Cypher查询语言,适用于社交网络、推荐系统等场景。与关系型数据库相比,Neo4j在图遍历和连接查询方面具有天然优势。通过原生图存储结构和多种索引优化,Neo4j成为处理高度关联数据的理想选择,尤其擅长路径查找和关系分析。

2025-06-18 22:01:19 937 1

原创 设计模式之责任链模式

简单介绍责任链设计模式,以及举个对应的实现责任链模式的具体业务场景

2025-06-18 19:47:45 212

原创 微信小程序登录(有后端交接,附带代码)

简述微信小程序如何与后端进行对接,以及一些id,手机号的获取以及使用

2025-06-17 21:55:59 437

原创 双token三验证(Refresh Token 机制​)

解决单token带来的风险问题

2025-06-17 21:22:01 1012

原创 ​RBAC(基于角色的访问控制)权限管理详解

RBAC(基于角色的访问控制)是一种权限管理模型,通过角色作为中间层连接用户和权限。核心是将用户与角色绑定,角色与权限绑定,实现灵活高效的权限控制。RBAC包含基础模型(RBAC0)、角色继承(RBAC1)、约束(RBAC2)和混合模型(RBAC3)。优势包括解耦用户权限、灵活角色分配、支持继承和便于审计。适用于企业管理系统、CMS、云平台等场景。相比ABAC,RBAC更适合角色固定的系统。现代开发框架已广泛支持RBAC实现。

2025-06-08 21:54:09 640

原创 GitFlow 工作模式(详解)

今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考。

2025-06-08 21:32:36 1266

原创 LeetCode Hot100(技巧)

不难发现,我们可以统计所有的0,1,2的数量,但是看完其他人的题解后发现不太正确,因此可以通过指针去走,我采取的是一个三指针的方法,我们利用当前点为i,因为我们所有的2肯定是一定放在最后面,所以定义r指针为标记为2的,再创建一个指针标记为1的,那么当i遇到当前节点不是0的时候,l就往后去走找0,当l位置为2时,就放到r的地方,也就是把2从后往前放,就可以了,但是这样写起来代码比较复杂。如果不存在下一个更大的排列,那么这个数组必须重排为字典序最小的排列(即,其元素按升序排列)。,返回其中的多数元素。

2025-06-08 21:12:51 429

原创 LeetCode Hot100 (贪心)

我们知道对于每个位置有一个长度到达后面,其实,对于当前位置的长度,他可以是前一个位置的长度-1,或者是前两个位置的长度-2,那么我们就可以贪心下去,看看最后一格的长度是否大于0即可。实际上就是模拟题,我们记录每个字符所能够到达的最远的右边届,当当前位置等于遇到的所有的字符的最大右届的时候,就是一个分割的字符的答案了。这边思考了一个简单dp做法,我们发现,对于每一个位置,他应该是由前面的可以到达他的最小值+1转移过来的,那么我们直接模拟即可。数组中的每个元素代表你在该位置可以跳跃的最大长度。

2025-05-31 15:19:07 521

原创 LeetCode Hot100(动态规划)

我们直接可以手动模拟,设置dpi是当前位置是否能够被拼接成功,那么我们每一次枚举到一个位置,就去枚举所有的字串,如果当前的字串能够完全的匹配i和i-length+1的字串,就去看看i-length是否可以,如果可以当前位置也就可以了。我们由于只能分成两个集合,那么两个集合的和明显是总的和/2 ,记录总和为sum,每个数组的和也就是sum/2,又发现,每个元素只能拿一个,那我们如果能够抽起来sum/2就可以了,去跑一便01背包。不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。

2025-05-30 17:58:58 1047

原创 LeetCode Hot100(多维动态规划)

也算是比较板子的dp了,我们设dp[i][j]为以i和j为结尾的最长子序列,它实际上有两种可能,一个是i和j对应的字符相等,那么直接就是i-1,j-1加1即可,如果不同,就是i-1,j,或者i,j-1转移过来即可。比较板子的dp,实际上就是到达一个点有两种方式,从上面来或者是左边,加起来就可以了。这边直接采取的暴力的做法,枚举每一个字符串,看看是不是回文的即可。跟上一题一样,该题取一下最小值即可。与上一题几乎一致,看一下代码即可。

2025-05-29 21:30:59 406

原创 LeetCode Hot100(矩阵)

也就是围着图一直顺时针的绕行,我们开一个标记当前节点是否走过的数组,就会发现每一次我们会先往左走,然后下,然后右,然后上,模拟即可,但是需要注意一点,就是在判断是不是向左边走的时候,应该先判断可不可以向上面走。我们不难发现,n*m的时间复杂度是完全ok的,但是为了降低时间复杂度,我们可以根据当前矩阵的性质,枚举列,找到当前列第一个》=的,如果等于直接返回,然后由于每一列每一行都是递增的,一点点向上枚举即可。

2025-05-29 19:14:41 608

原创 LeetCode Hot100 (普通数组)

我们定义前一个为a,后面一个为b,进行排序之后(a小的在前面,其次b小的在前面),这样就成为了一个线段覆盖问题,就会出现三种情况,简单的前缀和问题,我们记录当前位置前面的乘机,与当前位置后面的乘机即可,注意末尾和0位置应当为1。简单的dp问题实际上,如果当前位置的前一个位置的和大于0我们直接加上,不大于就忽略即可。不难发现,最大的正数也不会超过数组的长度,建立数组,一个一个放入即可。2.当前线段与前一个交接了一部分(两条线段合并)1.当前线段被前一个包围(忽略即可)3.不包含(再起一段)

2025-05-28 22:01:45 329

原创 LeetCode Hot100(字串)

跟之前的滑动窗口非常像,我们只需要统计当前区间是否满足完全包含t就可以了,需要注意的一点是,最好通过左端点+len放最小值最后提取字符串时间较短。优先队列维护即可,因为自定义优先队列返回的是自定义最大最小值,我们每一次放入值之后,开始特判当前位置过期的就可以了。因为存在负数,该题只能直接暴力了,当然,也可以使用前缀和,但是时间复杂度一样。

2025-05-23 15:23:12 272

原创 LeetCode Hot100(滑动窗口)

跟上一题实际上是一样的思路,但是我们需要注意一点,一个是当前的字符长度应当等于我们需要的字符长度,另外一方面就是每个字母的数量也应当相等就可以了。我们都知道,每一个字母都对应一个ascii码,那我们从前往后遍历,当出现重复字符的时候,左边的指针开始走,直到把重复的字符删除。

2025-05-22 21:00:38 441

原创 LeetCode Hot100 (双指针)

标记指针,当前位置为0向后面移动即可。

2025-05-22 20:56:17 399

原创 LeetCode Hot100 (哈希)

排序之后进行hash,如果存在直接放到后面,不存在,新创一个即可,最后通过stream流拿到答案。比较简单,建立个map,看看有没有当前对应的相反的值就可以了。

2025-05-22 20:39:39 565

原创 Java 11 线程

建立一个中间的类,就相当于判断中间的类的状态,为true时开启生产的,关闭消费的,false则相反为了处理他们之间的关系,通常会采取共享的数据区域(缓存区),就像是一个仓库,生产生产完餐品之后放到生产区,不需要关心消费者,对于生产者也是一样的池里均为线程的对象线程创建一个线程的成本比较高,因为他涉及到与系统的交互,因为相当于来了个任务,我现创建对象线程池就相当于养着一些对象线程资源必须通过线程池维护,不允许在应用中自行显示/* 参数1:核心线程的数量(正式员工);

2025-05-20 22:28:29 196

原创 Java 10IO流

【代码】Java 10IO流。

2025-05-20 22:26:02 189

原创 Java 09Stream流与File类

startWith(“张”)

2025-05-20 22:23:34 1608

原创 Java 08集合

/@Override//0 只有一个数据return 0;//1 正序排列return 1;//-1 倒叙排列return -1;//****也可以//升序排列this-o首先需要继承Comparable接口,该接口需要带着需要的实现类,加入需要比较的实现类即可重写里面的compareTo方法,进行比较即可就是自定义比较排序即可但是需要注意的是,一定要进行比较才可以。

2025-05-20 22:20:05 757

原创 Java 07异常

自定义编译时异常,继承Exception运行时异常,继承RuntimeException实际上就是创建一个类,去继承我需要的那个类,在编译或者运行的时候,实际上抛出的就是我自己写的那个类,那么就可以实现我自己写的异常去进行抛出。

2025-05-20 22:13:55 169

原创 Java 06API时间类

jdk8之前。

2025-05-20 22:10:12 292

原创 Java 05正则表达式

转移字符例如\t 实际上是\对t进行转移或者说是转义;

2025-05-20 22:06:31 378

原创 Java 04 API

其他的基本数据类型也是都是相等的。判断两个数组是否相同。

2025-05-20 22:04:49 325

原创 Java 03(代码块,内部类,lambda表达式)

本质上是一个特殊的局部内部类(定义在方法内部)

2025-05-20 21:56:11 334

原创 Java 02入门,封装继承多态

让类与类之间产生关系(子父类关系),子类可以之间使用父类中的非私有成员父类也称为基类和超类子类也称为派生类格式:public class erzi extends fuqin{代表本类对象的引用代表父类储存空间的标识可以修饰方法,类,变量不能被重写,不能被继承,不能被赋值1.本质上就是文件夹,用来管理类文件的2.建包的语法格式,一般是公司域名的倒写+技术名称。,建议全部小写1.特殊的父类2.内部允许编写抽象的方法1.本质上就是规则的声明2。如果发现一个类,所有的组成,都是抽象方法。

2025-05-20 21:52:47 512

原创 Java 01简单集合

1. 一个可变的字符序列 2. 是字符串缓冲区,其理解为容器,可以储存任意数据类型,但只要进入这个容器,就会成为字符串跟 StringButter 是差不多的 StringBuilder 是多个线程是不安全的但是 StringBuffer 是线程安全的;但是需要的一点是,效率 StringBuilder 是效率较高的也就是安全的东西他的效率低,不安全的效率高为啥要用因为数组是固定长度的,但是集合可以自由扩容,也就是可变的。

2025-05-20 21:45:56 306

原创 Codeforces Round 991 (Div. 3)

好久没写题解了。

2024-12-06 10:16:54 459 2

原创 Codeforces Round 987 (Div. 2)(A-D)

感觉板子题没写出来,算了,半退了。

2024-11-16 13:29:13 387

原创 Educational Codeforces Round 171 (Rated for Div. 2)(A-D)

感觉写模拟要写成shi了。

2024-10-29 12:45:53 585 1

原创 Codeforces Global Round 27(A-D)

那么我们从前往后走,我们发现到了一个位置,会出现一个状态,是应该让前面的一个数字去乘以他前面的2的数量还是让全部的2去乘以最后的2的数量,这个情况其实很好解决,我们到达一个位置,如果前面那个数字到达当前的数字所有的2依旧小于前面的那个数字,那就不用选当前的位置,否者,就选最后的这个位置就可以了,可能翻译出来题意比较无语,实际上就是一个n*m的表格,第r,c走了,剩下的在他后面的点移动道他们前面的那个点的位置,问移动的麦哈顿距离,我们画图就能够发现第r+1到第n行的第一个会移动m搁,其他就是一格。

2024-10-28 13:00:43 1030 1

原创 牛客周赛 Round 65

感觉是6道签到。

2024-10-28 00:44:24 631

原创 Codeforces Round 982 (Div. 2)(A-D1)

晚上出去吃了个饭,直接给自己打红温了。

2024-10-27 14:56:48 476

原创 Codeforces Round 981 (Div. 3)(A-F)

感觉g是一个复杂的树上二分+dp,现在没有能力补一场全是思维题。

2024-10-25 10:32:58 1405

原创 Codeforces Round 980 (Div. 2)(A-D)

感觉这场都是猜,补了个D。

2024-10-24 20:02:48 353

原创 AtCoder Beginner Contest 376(a-e)

想补个f来着,刚比赛回来还打铁了,实在没心情。

2024-10-23 22:02:23 344

原创 Codeforces Round 734 (Div. 3)(A-E)

和队友vp了一场,感觉没有学到啥。

2024-10-16 18:37:13 301

原创 Educational Codeforces Round 170 (Rated for Div. 2)(A-D)

想补个E来着,不是很会。

2024-10-15 15:27:23 666

原创 codeforces round 978(A-D)

这场难度划分感觉好大(菜菜的cf叫asom22)vp链接。

2024-10-14 19:38:10 1001

原创 牛客周赛63

挺红温的 ,怎么都是线代,放一个自己的头文件。

2024-10-13 23:22:02 344 1

空空如也

空空如也

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

TA关注的人

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