自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Leetcode131.分割回文串

递归用来纵向遍历,for循环用来横向遍历,切割线(就是图中的红线)切割到字符串的结尾位置,说明找到了一个切割方法。这道题目在leetcode上是中等,但可以说是hard的题目了,但是代码其实就是按照模板的样子来的。切割问题:切割一个a之后,在bcdef中再去切割第二段,切割b之后在cdef中再切割第三段…但接下来如何模拟切割线,如何终止,如何截取子串,其实都不好想,最后判断回文算是最简单的了。此时可以发现,切割问题的回溯搜索的过程和组合问题的回溯搜索的过程是差不多的。如果意识到这一点,算是重大突破了。

2023-04-01 15:25:18 144

原创 【数据结构】哈夫曼树及哈夫曼编码实现

哈夫曼树是一种二叉树,其中没有度为1的结点,因此一棵有 n 个叶子的哈夫曼树共有 2n-1 个结点,可以用一个大小为 2n-1 的一维数组来存放哈夫曼树的各个结点。由于每个结点同时还包含其双亲信息和孩子结点的信息,所以构成一个静态三叉链表。/*哈夫曼树的类型定义*/ # define N 30 //叶子结点的最大值 # define M 2 * N - 1 //所有结点的最大值 typedef struct {int weight;//结点的权值 int parent;

2023-03-08 15:55:38 1923

原创 详解JVM 的垃圾回收算法和垃圾回收器

开篇我们知道JVM的垃圾回收机制实际上是对JVM内存的操作,回收的目的是为了避免内存溢出和内存泄漏的问题。而JVM内存由方法区、堆、虚拟机栈、本地方法栈以及程序计数器5块区域组成,虚拟机栈、本地方法栈、程序计数器是随着Java线程建立而建立,当Java 线程完成之后这三个部分的内存就会被释放掉。而方法区和堆属于共有线程,是随着JVM启动而建立的,而且这两个区域与另外三个区域也有所不同,一个接口中有多少个实现类(方法区)以及每次程序运行需要创建多少对象(堆)是动态的,也就是说在程序运行时才能知道。为了让这部

2023-03-08 15:21:45 186

原创 CSAPP:深入理解计算机系统 AttackLab

目的:1、深入理解当程序没有对缓冲区溢出做足够防范时,攻击者可以利用安全漏洞的方法。2、更好地了解如何编写更安全的程序,以及编译器和操作系统提供一些帮助,以减少程序的易受攻击性。3、深入了解x86-64机器代码的堆栈和参数传递机制。4、深入了解x86-64指令的编码方式。5、熟练使用gdb和objdump等调试工具。文件说明ctarget:一个容易遭受code injection攻击的可执行程序。

2022-12-09 09:50:21 1077

原创 CSAPP:深入理解计算机系统 BombLab

本实验要求你使用课程所学知识拆除“binary bombs”,增强对程序的机器级表示、汇编语言、调试器和逆向工程等方面原理与技能的掌握。一个“binary bombs”(二进制炸弹,下文将简称为炸弹)是一个Linux可执行程序,包含了6个阶段(或层次、关卡)。炸弹运行的每个阶段要求你输入一个特定字符串,你的输入符合程序预期的输入,该阶段的炸弹就被拆除引信即解除了,否则炸弹“爆炸”打印输出 “BOOM!!!”。实验的目标是拆除尽可能多的炸弹层次。阶段1:字符串比较阶段2:循环阶段3:条件/分支。

2022-12-09 09:44:04 696

原创 自动注入@Autowired与@Resource区别详解

Autowired和@Resource区别详解

2022-11-20 13:18:13 1204

原创 RESP.app 连接redis失败时防火墙设置

RESP.app 连接redis失败时防火墙设置

2022-11-06 16:18:31 368

原创 Mybatis通用枚举 Enum TypeHandler

通常可以为每个Enum类配置一个TypeHandler,但是这种比较繁琐,这里通过注解配合Mybatis的默认EnumTypeHander配置实现通用枚举TypeHander。在mybatis-plus提供的TypeHandler上做了简单修改,会取枚举添加@EnumValue注解的属性值,如果未发现注解,使用枚举的name。但是现实处理的时候,我们Enum定义时可能是需要存储code,上面两种都不符合我们的需求,这时候就需要自定义TypeHandler了。tk通用Mapper使用。入库的值为枚举的位置。

2022-10-31 11:49:29 1558

原创 MyBatis多表关联查询字段名称冲突的解决办法

我们要对数据库中的两张表进行管理查询,但是不幸的是这两张表有相同的字段名,导致最后查询出来的结果里这两个字段的值是相同的!很显然某一个被另一个给覆盖了,而原因就是:多表关联查询时有相同的字段名,解决方案其实很简单,定义结果集和查询的时候都取一个别名就可以了!mapper.xml文件:下面写法是错误的,这样查出来的id只有一个。实体类2:Account.java。实体类1:User.java。这么做就可以解决问题了。

2022-10-30 23:05:14 736

原创 2003 -Can t connect to MySQL server on localhost (10061 “Unknown error“)的解决方法

2003 -Can t connect to MySQL server on localhost (10061 “Unknown error“)的解决方法

2022-10-30 21:08:24 2235

原创 LeetCode《剑指offer》第二版 Java版全系列题解

本系列记录了最新版 《剑指Offer》 的题解过程与代码,这里用Java代码复现并优化,并包含解题分析。希望各位能够点赞,收藏!关注我! 每日更新!

2022-08-31 15:59:54 334

原创 pring-boot-starter-parent下面的版本报红

springboot版本号爆红

2022-06-22 23:38:28 2131

原创 在内存管理中,“内零头”和“外零头”个指的是什么?

在内存管理中,“内零头”和“外零头”个指的是什么?在固定式分区分配、可变式分区分配、页式虚拟存储系统、段式虚拟存储系统中,各会存在何种零头?为何?html解答: 在存储管理中,内零头是指分配给做业的存储空间中未被利用的部分,外零头是指系统中没法利用的小存储块。 在固定式分区分配中,为将一个用户做业装入内存,内存分配程序从系统分区表中找出一个能知足做业要求的空闲分区分配给做业,因为一个做业的大小并不必定与分区大小相等,所以,分区中有一部分存储空间浪费掉了。由此可知,固定式分区分配中存在内零头。

2022-03-19 19:52:02 3150

原创 关于 Visual Studio 无法卸载/无法下载/无法更新的解决办法

由于网络问题,visual studio 的安装下载经常会遇到进度条不动,无法下载的问题。网上有两个常见的解决办法:1、修改DNS为8.8.8.8或114.114.114.1142、修改hosts文件。如果以上两个方法不起作用作者亲测用手机打开热点,电脑连接手机热点进行下载或更新即可...

2022-02-18 18:51:48 2990 1

转载 2022年最全Java学习路线

出于对Java小白的考虑,所以从Java基础出发,先对于Java小白从哪里入手有一个大体的认知,先踏进入门阶段,然后再脚踏实地的出发,阶段性的来学习Java,一步一步蜕完成Java小白到大神的蜕变。初学者可直接按照以下的Java学习路线:JavaSE-->MySQL -->JDBC -->JavaWeb -->Ajax--> jQuery-->Linux-->Maven-->Spring-->SpringMVC...

2022-01-28 18:27:00 1090

空空如也

空空如也

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

TA关注的人

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