自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 DAY38,39,41|动态规划01

动态规划系列题1

2024-05-07 20:18:41 137

原创 DAY32|1005.K次取反后最大化的数组和,55. 跳跃游戏,45.跳跃游戏II

1005.K次取反后最大化的数组和,55. 跳跃游戏,45.跳跃游戏II

2024-04-22 23:29:59 237

原创 DAY31-贪心算法| 455.分发饼干,376.摆动序列,53. 最大子序和

455.分发饼干,376.摆动序列,53. 最大子序和

2024-04-20 00:05:04 302

原创 DAY29| 491.递增子序列 ,46.全排列 ,47.全排列II

491.递增子序列 ,46.全排列 ,47.全排列II

2024-04-17 23:07:07 458

原创 DAY28| 93. 复原IP地址 ,79.子集 ,90.子集II

93. 复原IP地址 ,79.子集 ,90.子集II

2024-04-16 23:17:42 348

原创 DAY27| 39. 组合总和 ,40.组合总和II ,131.分割回文串

39. 组合总和 ,40.组合总和II ,131.分割回文串

2024-04-15 23:05:53 178

原创 DAY24,DAY25|回溯讲解,77.组合,216.组合总和III,17.电话号码的字母组合

回溯讲解,77.组合,216.组合总和III,17.电话号码的字母组合

2024-04-14 20:57:26 318

原创 DAY23|669.修建二叉搜索树,108.将有序数组转换为二叉搜索树,538.把二叉搜索树转换为累加树

669.修建二叉搜索树,108.将有序数组转换为二叉搜索树,538.把二叉搜索树转换为累加树

2024-04-12 13:18:39 367

原创 DAY22|235.二叉搜索树的最近公共祖先,701.二叉搜索树中的插入操作,450.删除二叉搜索树中的节点

235.二叉搜索树的最近公共祖先,701.二叉搜索树中的插入操作,450.删除二叉搜索树中的节点

2024-04-10 23:38:48 249

原创 DAY21|530.二叉搜索树的最小绝对差,501.二叉搜索树中的众数,236.二叉树的最近公共祖先

530.二叉搜索树的最小绝对差,501.二叉搜索树中的众数,236.二叉树的最近公共祖先

2024-04-09 23:48:15 208

原创 DAY20|654.最大二叉树,617.合并二叉树,700.二叉搜索树中的搜索,98.验证二叉搜索树

654.最大二叉树,617.合并二叉树,700.二叉搜索树中的搜索,98.验证二叉搜索树

2024-04-08 23:54:44 283

原创 DAY18|513.找树左下角的值,112.路径之和,106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树

513.找树左下角的值,112.路径之和,106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树

2024-04-07 23:55:17 229

原创 DAY17|110.平衡二叉树,257.二叉树的所有路径,404.左子路之和

110.平衡二叉树,257.二叉树的所有路径,404.左子路之和

2024-04-06 15:40:47 264

原创 DAY16|104.二叉树的最大深度,111.二叉树的最小深度,222完全二叉树的个数

104.二叉树的最大深度,111.二叉树的最小深度,222完全二叉树的个数

2024-04-05 19:45:38 428

原创 DAY15|二叉树的层序遍历,226.翻转二叉树,101.对称二叉树

二叉树的层序遍历,226.翻转二叉树,101.对称二叉树

2024-04-05 19:44:21 294

原创 DAY14|二叉树的遍历

二叉树的递归遍历和迭代遍历

2024-04-02 23:45:21 400

原创 DAY13|239.滑动窗口的最大值,347.前 K 个高频元素

239.滑动窗口的最大值,347.前K个高频元素

2024-04-02 23:44:08 370

原创 DAY10,DAY11|逆波兰表达式,有效括号,删除字符串中重复项

栈,队列相关算法题,逆波兰表达式,有效括号,删除字符串中重复项;

2024-03-31 23:37:13 731

原创 DAY8|反转字符串,翻转字符串里的单词,右旋转字符串

DAY8|反转字符串,翻转字符串里的单词,右旋转字符串

2024-03-28 00:56:30 561

原创 DAY7|四数相加II,赎金信,三数之和,四数之和

四数相加II,赎金信,三数之和,四数之和

2024-03-27 12:51:57 639

原创 代码随想录-DAY5|哈希表相关题1

为什么要用Map呢?设想一下,我们使用暴力解法完成这题的时候,实际上,我当时也不想遍历第一个元素的时候,去跟所有的后续的元素进行比较;那么这时map就起到了作用,我们每遍历一个元素,就去map里查找是否存在key=(target-num[i]),存在就返回下标value和当前元素下标i就行,不存在就将当前的key=num[i],value=i存入map中;1、此题中规定,输入的皆为小写字母,所以我们可以定义一个长度为26的数组,下标0到25分别存储出现’a’到’z’在字符串中出现的次数;

2024-03-26 00:12:33 526

原创 代码随想录-DAY4|leetcode-24,19,142,面试题 02.07

环形链表,两两相交链表中的节点,删除节点倒数第N个节点,链表相交

2024-03-25 02:04:12 898

原创 代码随想录-DAY3|203.移除链表元素、707.设计链表、206.反转链表

移除链表元素,设计链表,反转链表

2024-03-22 23:04:23 480

原创 代码随想录-DAY2|977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II

有序数组的平方,长度最小子数组,螺旋矩阵II

2024-03-21 23:46:02 569

原创 代码随想录-DAY1 704.二分查找、27.移除元素

代码随想录day1-二分查找,移除数组元素

2024-03-20 19:27:58 364

原创 linux下安装redis

Linux服务器下安装redis

2022-08-10 23:37:32 115

原创 自定义AQS锁

自定义一个不可重入锁的独占锁,首先,我们都知道synchronized的原理了,那么如果不使用synchronized怎么达到synchronized的原理思想,1.首先,我们通过一个状态来知道当前是否被占用 state 0表示无锁 1表示被占用, 2.加锁时,通过cas操作来尝试将state从0变成1,如果成功则获取到锁,如果失败,则进入一个等待队列(这相当于monitor中的waitSet一样的想过)...

2022-07-31 10:15:03 179

原创 G1回收器(一)

记忆集(RememberSet)为解决对象跨代引用所带来的问题,垃圾收集器在。

2022-07-28 16:21:21 647

原创 分治算法-汉诺塔问题代码实现

分治算法-汉罗塔问题java代码实现

2022-07-28 15:58:03 216

原创 mysql设置允许外部访问

1. 登录进入mysql;mysql -uroot -p输入密码进入2. 输入以下语句,进入mysql库,查看user表中root用户的访问3. 更新user表中root用户域属性,'%'表示允许外部访问,如下图演示;4. 执行以上语句之后再执行,FLUSH PRIVILEGES;5. 执行授权语句然后外部就可以通过账户密码访问了。当然,类似于访问阿里云服务器还需要开放端口和进行防火墙设置;......

2022-06-30 14:16:59 10259 2

原创 BST二叉排序树代码实现

二叉排序树:BST: (Binary Sort(Search) Tree), 对于二叉排序树的任何一个非叶子节点,要求左子节点的值比当前节点的值小,右子节点的值比当前节点的值大类似于这样一组数据 (7, 3, 9, 1, 4, 8, 15, 2) ,依次加入后对应的二叉排序树应为:添加的思路较简单,从根节点开始遍历添加,如果值比当前节点小,则向左子节点递归添加,如果比当前节点大,则向右子节点递归添加;先找到需要删除的节点;再找到需要删除的节点的父节点;判断需要删除的节点是以下那种类型:a. 删除叶子节点

2022-06-30 13:50:36 145

原创 事务的隔离级别与传播行为

1.事务的四⼤特性原⼦性(Atomicity)原⼦性是指事务是⼀个不可分割的⼯作单位,事务中的操作要么都发⽣,要么都不发⽣。从操作的⻆度来描述,事务中的各个操作要么都成功要么都失败⼀致性(Consistency)事务必须使数据库从⼀个⼀致性状态变换到另外⼀个⼀致性状态。例如转账前A有1000,B有1000。转账后A+B也得是2000。⼀致性是从数据的⻆度来说的,(1000,1000) (900,1100),不应该出现(900,1000)隔离性(Isolation)事务的隔离性是多个⽤户并发访问数据库时,数据

2022-06-28 22:37:27 241

原创 MySQL8.0 忘记 root 密码怎么办?

mysql8.0,忘记root密码如何修改?1.vim /etc/my.cnf,添加 skip-grant-table(跳过权限验证),注意是加在mysqld模块下;2.重启mysql服务;3.进入mysql -uroot -p, 此时可直接无密码登录;4.进入mysql数据库下进行旧密码置空(Mysql8.0)...

2022-06-20 17:52:06 6834

原创 数据结构-二叉树图解与实现

需要一种数据结构来平衡查找与插入效率,使得查找速度和插入速度都能得到提升,因此有了树这种数据结构。如果该二叉树的所有叶子节点都在最后一层,并且结点总数= 2^n -1 , n为层数,则我们称为满二叉树。如果该二叉树的所有叶子节点都在最后一层或者倒数第二层,而且最后一层的叶子节点在左边连续,倒数第二层的叶子节点在右边连续,我们称为完全二叉树前序遍历先遍历父节点,再遍历左子节点,最后遍历右子节点中序遍历先遍历左子节点,再遍历父节点,最后遍历右子节点后序遍历先遍历左子节点,再遍历右子节点,最后遍历父节点可以看

2022-06-18 11:05:11 669

原创 从自定义AtomicInteger到其源码分析

通过自定义AtomicInteger可以帮助我们理解其源码首先,我们想达到的目的是能够完成一个保证在不使用synchronized关键字的情况下,保证对int的操作安全;大致代码思路如下:根据上述思路编写大致代码如下:编写测试代码可以观察到测试结果正常;先观察AtomicInteger的结构,红框部分是此次分析主要部分;可以观察到,同样AtomicInteger对int的操作同样是用volitile封装的,保证可见性;同时也用valueOffset存储了在对象中int属性的偏移量;从源码分析

2022-06-14 15:24:43 132

原创 享元模式与自定义连接池

享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能。这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式。享元模式尝试重用现有的同类对象,如果未找到匹配的对象,则创建新对象。然后通过自定义数据库连接池来学习和了解连接池的思想原理,练习代码通过synchronzied和semaphere信号量两种版本来控制线程状态...

2022-06-13 15:39:36 246

原创 使用ReentrantLock顺序打印-循环打印ABC

ReentrantLock练习代码,利用ReentrantLock完成循环打印和达到同步控制的目的,代码案例为循环打印-循环打印ABC

2022-06-13 14:24:59 243

原创 volatile关键字

本文通过案例来描述JMM中可见性和有序性,然后分析volatile关键字是如何保证的可见性和有序性,并且拓展一下关于happen-before规则相关知识;

2022-06-08 10:52:27 139

原创 synchronized的原子性,可见性,有序性

JMM三大特性以及分析和描述synchronzed中的原子性,可见性,有序性;

2022-06-07 21:49:44 1325

原创 保护性暂停模式与join原理

掌握同步模式中的保护性暂停模式,通过代码练习来熟悉该技巧,然后梳理流程分析jdk源码中的join源码

2022-05-24 14:48:39 178

空空如也

空空如也

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

TA关注的人

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