自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Counter-Strike大牛

分享一些解决问题的方法

  • 博客(171)
  • 资源 (5)
  • 收藏
  • 关注

原创 【算法】二叉树的前序、中序、后序遍历

前序遍历:DBEAFCG。中序遍历:ABDECFG。后序遍历:GCFAEBD。

2024-04-09 16:08:47 210

原创 【算法】最长连续递增序列 - 贪心算法

从第一个元素开始遍历,当遍历到当前元素不再递增时,计算当前长度,并与之前记录的最大值比较,取到最终的最大值。给定一个数组,要求从数组中找到最长的连续递增的序列。

2024-04-08 20:41:31 442

原创 【算法】二叉树最小深度 - 深度优先/广度优先

从根节点遍历所有叶子结点,找到最少的节点数。创建一个队列,将根节点及其深度放入队列,取出后判断其左右节点,如果为null返回深度,否则将左右节点放入队列,深度为上一节点深度 +1,以此类推。先找到所有的叶子节点,然后从叶子节点数到根节点,找到最少的节点数。给定一个二叉树,求最小深度(根节点到叶子结点最少的节点数)。

2024-04-08 19:57:37 239

原创 【算法】子数组最大平均数 - 滑动窗口

先选中开头的 n 个数字,计算出和并记录,然后后移窗口(减去最前面的数再加上后面的一个数),计算出新的和,取最大的和,最后计算平均数并返回。给定一个数组和一个数字 n ,在数组中找到连续的 n 个平均数最大的数字。

2024-04-08 18:51:46 152

原创 【算法】合并两个有序数组 - 双指针

定义三个指针,分别指向 nums1 的最大元素(p1)、nums2 的最大元素(p2)、nums1 的最后一个元素(空位)§。依次对比 p1 和 p2 的大小,大的放到 p 的位置,前移已经移动的指针和 p 指针即可。两个有序整数数组 nums1 和 nums2 及他们的元素个数 m、n,将 nums2 合并到 nums1 中,结果依然有序。nums1 长度默认为 m + n,没有元素的位置用 0 补齐。

2024-04-07 13:13:24 394

原创 【算法】环形链表 - 遍历/双指针

声明一个快指针和一个慢指针,快指针每次移动两步,慢指针移动一步,如果两指针相等则说明有环。声明一个Set,遍历链表放入Set,如果放入失败,说明有环。给定一个链表,判断链表中是否有环,并返回结果。

2024-04-07 11:30:50 398

原创 【算法】排硬币 - 二分法/牛顿迭代

定义一个指针 low = 0,和一个指针 high = 1,每次迭代将 low + high 赋值给 high,将原来的 high 赋值给 low,从2开始遍历到n即得出结果。使用递归的方式计算出结果,但使用一个数组保存已经计算出来的值,防止重复计算,提高性能。每个数等于前面两个数相加,第n位等于第(n - 1)位加上第(n - 2)位。斐波那契数列:0 1 1 2 3 5 8 13 ……给定n,求斐波那契数列第n位的数值。

2024-04-06 21:24:06 218

原创 【算法】斐波那契数列第n位 - 去重递归/双指针迭代

定义一个指针 low = 0,和一个指针 high = 1,每次迭代将 low + high 赋值给 high,将原来的 high 赋值给 low,从2开始遍历到n即得出结果。使用递归的方式计算出结果,但使用一个数组保存已经计算出来的值,防止重复计算,提高性能。每个数等于前面两个数相加,第n位等于第(n - 1)位加上第(n - 2)位。斐波那契数列:0 1 1 2 3 5 8 13 ……给定n,求斐波那契数列第n位的数值。

2024-04-06 19:53:19 160

原创 【算法】有序数组的两数之和 - 二分法/双指针

初始化两个指针,一个指向下标0,另一个指向最后一个数,让两个数相加,如果大于给定数,则右指针左移,否则左指针右移,直到找到和等于给定数的两个值,返回下标即可。以第一个数为基准数,采用二分法寻找数组中与之相加等于给定数的数字,找到则返回下标,否则以第二个数为基准数,以此类推。在一个有序数组中找到两个数,两个数之和为给定的一个数,返回两个数在数组中的下标。

2024-04-06 19:00:15 190

原创 【算法】无序数组的两数之和 - map标记

遍历数组,遍历到一个数字的时候,记录下这个数及其下标,遍历时判断给定数减去这个数为key在map中是否存在,存在则返回两个下标,否则将数和下标放入map即可。在一个无序数组中找到两个数,两个数之和为给定的一个数,返回两个数在数组中的下标。

2024-04-06 18:40:37 410

原创 【算法】求一个数组中三个数乘积最大值 - 线性扫描

一个数组中最大值只有两种情况:两个最小的负数和一个最大的正数 & 三个最大的正数。线性扫描找出这五个数字,即可求出最大值。给定一个数组,找出数组中乘积最大的三个数。

2024-04-06 17:21:44 280

原创 【算法】求平方根 - 二分法/牛顿迭代

比如求12的平方根,2 * 6 = 12,那么 (2 + 6) / 2的值就会更趋近于平方根。求num的平方根,则是求 num / x 和 x 的均值,这个值会越来越趋近于真正的平方根。遍历每次取中间数,大了就往小取,小了就往大取,直到取到正确的值。求一个数的平方根,要求返回小于等于平方根的正整数。

2024-04-05 16:44:49 265

原创 【算法】寻找数组中心下标 - 双指针/求总和

遍历数组,当 sum * 2 + 当前元素 = arraySum时,当前元素即为中心元素,不想等则让 sum 加上当前元素。遍历数组,每次遍历先让 leftSum + 当前元素,此时两个Sum都包含当前元素,如果两个Sum相等,则当前元素为中心元素;定义两个变量,一个为从左侧累加的和 leftSum = 0,一个从右侧递减的和 rightSum,rightSum初始值为整个数组的和。给定一个非空数组,找到一个元素,该元素左侧元素和等于其右侧元素和,返回该元素下标。

2024-04-05 10:50:23 164

原创 【算法】删除数组中的重复元素 - 双指针

定义一个快指针 j 和一个慢指针 i,慢指针从下标0开始,快指针从下标1开始,遍历数组。如果两个下标对应的数不相等, 则后移 i,并将j的元素赋值到 i,然后后移 j。如果相等,则只后移 j。这样等 j 遍历完数组后,不重复的元素正好排到 i 的位置。由于题目要求返回长度,所以返回 i+1 即可。给定一个有序数组,要求删除数组中的重复元素,不允许创建新数组,返回删除重复元素后的数组长度。

2024-04-04 11:47:58 211

原创 【算法】统计素数个数 - 埃筛法

素数只能被1和它本身整除,所以小的数能够通过乘法计算出来的数都不是素数。埃筛法就是不断地用小的数做乘法标记出哪些数不是素数,从而减少遍历次数。

2024-04-04 11:26:58 163

原创 【算法】链表翻转的两种写法

【代码】【算法】链表翻转的两种写法。

2024-04-02 19:39:06 364

原创 【算法】字符串查询KMP算法代码实现

主要原理是,先在子串中找到所有重复的更小子串,并在重复的后面的子串的最后一位的下标记录子串长度。当与主串匹配出现不一致时,后移失配的前一个下标对应步长,然后继续进行匹配。不回溯主串,通过计算步长后移子串的方式快速查找字符串,将时间复杂度控制到O(n)。

2024-04-02 18:54:24 351

原创 MySQL事务隔离级别及MVCC详解

C事务读id为1的数据,由于是可重复读隔离级别,所以不再生成新的ReadView,还是用之前的,m_ids=[100, 200],min_trx_id=100, max_trx_id=201,creator_trx_id=0。C事务读id为1的数据,再次生成ReadView,m_ids=[200],min_trx_id=200,max_trx_id=201,creator_trx_id=0。ReadView中有m_ids、min_trx_id、max_trx_id、creator_trx_id。

2024-03-19 21:34:24 932

原创 HashMap源码分析

hashMap 源码

2024-03-17 21:47:55 674

原创 hashCode()的常数31详解

那为什么这里要乘31呢?乘其他数可不可以呢?可以看到for循环中。

2024-03-17 17:07:14 331

原创 阿里云ECS服务器如何搭建并连接FTP,完整步骤

怎么用终端连接服务器就不多说了,直接开始搭建FTP。sudo。

2023-11-21 16:39:31 2731

原创 MyBatis联表查询时,主查询表的字段怎么统一加别名(通用方案)

但是每次写一个联表查询SQL都需要这样来一次,维护起来就比较困难了。一般来说,MyBatis生成的xml sql文件中,会有一个。,方便查询时直接引用。

2023-08-28 18:09:13 2742

原创 DataGrip快捷键及使用技巧

DataGrip快捷键,新建console,提交查询

2023-08-07 17:53:15 4476

原创 小米手机怎么查看电池剩余容量、健康百分比

8、计算剩余容量百分比,就很简单了,用剩余容量除以电池的额定容量就好了。3、等待bug报告生成完毕,然后点击就可以进入报告所在目录。如果返回了也没关系,报告在。这个值,这个就是当前电池的估计剩余容量,我这个电池显示3380mAh,已经掉了很多了。4、这时候可以在手机解压查看也可以弄到电脑上解压查看。为了便于操作我选择弄到电脑上。我这里少输了一个*,因为再输入一个*就跳转走了。我们不需要关注太多,只需要看。1、首先打开拨号界面,输入。7、打开该文件,搜索。

2023-07-21 16:02:43 9837 5

原创 使用JOIN查询数据重复,怎么办?使用count统计怎么写SQL?

如果要用count统计数据,直接按最开始的写法也会统计多出来,而且此时distinct和group by也不好用了。distinct直接没效果,group by则变成了按tbl_a的id分别统计个数。

2023-07-20 11:35:12 458

原创 yaml配置对象map

【代码】yaml配置对象map。

2023-07-12 18:12:44 1704

原创 使用JSON.toJSONString时,出现“$ref”怎么办?服务器返回对象显示$ref怎么解决?

【代码】使用JSON.toJSONString时,出现“$ref”怎么办?服务器返回对象显示$ref怎么解决?

2023-06-29 10:35:49 1367

原创 mac如何删除自带的ABC输入法,最简单的方案

值为“ABC”(我的已经删了,就不贴图了),将该数字选中,点击上面的Delete,删除掉;4、依次打开数字,其中有一个数字下面的。5、按Ctrl + S进行保存即可。版本:13.2.1 (22D68),自行搜索下载、安装;

2023-06-09 11:08:58 2263 3

转载 mac使用技巧

想保存软件图标图片 你可以在「应用程序」文件夹中找到这个软件 然后双指点按选择「显示包内容」 「Contents」-「Resources」 里面一般都会有一个叫「AppIcon.icns」的文件 双击用「预览」打开它 然后双指点按左侧缩略图,选择「导出为」 选择格式保存就可以了 如果想要透明底的图片 就选择 PNG 格式。在大多数程序中,如果你想要一份详细的程序快捷键清单,那么你可以点击 Leopard 的 help 菜单,在搜索框输入:shortcuts,然后这个程序的所有快捷键就会展示给你,很酷吧。

2023-03-20 11:56:27 1011 1

原创 MySQL通过JSON格式查看SQL执行详细步骤

SQL语句]

2023-03-16 14:49:42 773

原创 mac使用sublime text怎么把其他符号替换为制表符、换行符

这时候要在Replace框中输入制表符,直接按Tab键会直接跳到Find框,输入\t会直接把“.”替换为“\t”。在文本处理中,经常需要用到查找替换功能,有时候要把文本复制到Excel中,这时候就要批量加入制表符,省去在Excel中的复杂处理。

2023-02-28 17:34:24 3826

原创 mac使用sublime text卡顿解决方法,附常用快捷键

在mac上使用sublime text总是卡顿,比如选中一段文字复制,然后去干别的,等会回来点击空白处取消对文字的选择,点好多下都取消不了。再比如修改tab格式也是改着改着就卡住了。

2023-02-28 17:18:20 1558

原创 横向的Excel输出为pdf自动分成两页怎么办?不分页,铺满整张纸的方法来了

我们工作中有时候会需要把Excel转换成pdf,一般我们用WPS的“输出为pdf”功能就可以转了。但是有些横向的Excel转换的时候,会自动分成两页,这并不是我们想要的效果。怎么才能不分成两页呢?首先我们有一个Excel:使用“输出为pdf”功能,输出效果如下:这肯定不是我们想要的效果。

2022-12-01 21:36:05 15441

原创 nt6hddinstallerv2.8.1系统安装工具下载

由于后来的新版本,在windows10系统下无法正常使用,所以保存了2.8.1的版本,这个版本在windows10是可以正常使用的。nt6 hdd installer v2.8.1,是一款无需使用U盘即可安装系统的系统安装工具,通常用于双系统、多系统的安装。相关下载链接:https://download.csdn.net/download/qq_34972627/87069519。

2022-11-18 13:09:29 4242 1

原创 小程序怎么自定义导航栏,导航栏放图片、设置高度

这样就搞定了,希望你们的logo比我的好看。今天来说一下小程序的自定义导航栏。

2022-10-27 16:00:40 11760

原创 小程序返回页面报错:navigateBack:fail cannot navigate back at first page.

调试小程序的时候,从主页跳转到了另一个页面,在另一个页面的bindtap事件绑定的函数中,调用了。相当于重定向,不算是从上一个页面跳转过来的,所以把跳转后的页面当做了第一个页面。看字面意思也很简单,说的是现在这个页面已经是第一个页面了,没办法再返回了。这个错误原因其实也简单,就是在跳转的时候使用了。这样跳转之后,点击返回就可以成功返回上一页了。

2022-10-27 15:39:55 4463

原创 在mac(m1)上启动mybatis-generator-gui报错及修复

找遍了网络,有说引入一个依赖的,还有就是说非官方的jdk可能返回的os.name和os.arch不太一样,不一样的话要么换jdk,要么想办法修改这两个参数。然后就打开了zulu官网,发现官网的zulu有带javaFX的版本。直接下载了一个jdk8带javaFX的版本,安装了。然后就开始找javaFX的maven依赖,引入之后,代码是不报红了,fxml文件也正常了。换了mac之后,装了zulu的jdk,当时是朋友发给我的,就直接安装了。这就尴尬了,包都引入了但是却不能用。启动,不报错了,第二个问题也解决了。

2022-10-20 18:26:10 715 2

原创 mac打开应用时提示“xxx.app”已损坏

这一段可以直接打开访达,从应用程序中拖到终端,防止路径不一致的情况。

2022-09-30 10:18:56 236

原创 mac电脑升级Monterey12.1版之后L2TP连接公司内网后无法正常访问的问题解决

公司内网设置:L2TP,无共享密钥。mac版本:版本12.6。

2022-09-26 14:49:25 11578 6

原创 mac的终端显示分支名称?mac的终端和idea中的terminal同时修改

想在使用git的时候能随时看到分支的变化,之前用windows,git bash直接能看到。mac中的终端展示不出来,所以需要搞一搞,以便于使用。在网上找了好多都不能用(应该是zsh的问题)。当前使用mac为m2的cpu,系统版本12.5.1。2、打开刚刚创建的文件,将下面的脚本复制进去:3、打开家目录下的文件,如果没有就创建一个,然后把下面的参数复制进去:4、执行下面命令:大功告成,这时候再进入项目目录下,就能看到项目当前分支了。IDEA里面的terminal需要重启一下才会有。

2022-08-22 15:30:03 507

nt6hddinstallerv2.8.1系统安装工具下载

nt6 hdd installer v2.8.1系统安装工具,用于windows系统安装,无需使用u盘,即可在当前系统其他盘中安装其他系统,常用于双系统、多系统的安装。

2022-11-18

地图文件夹迷宫(适用于windows系统)

该小程序可以在当前目录下创建一套文件夹,可以存放一些相对私密或者隐私性比较高的文件。 生成的文件夹目录形式如下: 当前目录\电子地图\xx省\xx市\xx县\xx镇 需要注意的是,只有河北省是所有市县镇都有的,其他省份只有到市或者区。 比如我可以把我的文件藏在河北省\张家口市\蔚县\桃花镇下面,这样别人如果用我的电脑,看到电子地图也不会去点开看。就算点开了,也是一堆一堆的文件夹,不容易看到隐私内容。 另外,这种形式的文件夹比较用数字命名的文件夹,更不容易引起别人的疑心,也比较容易让自己记住。

2022-07-20

Windows系统自带程序集合

windows自带的程序的集合,双击运行后会显示一下内容: 请输入程序序号: 1.记事本 2.写字板 3.磁盘清理 4.计算器 5.画图 6.放大镜 7.定时关机 8.取消关机 可以根据自己的需要输入数字,然后回车即可。 注:定时关机时间单位是秒,比如希望10分钟之后关机,输入7 → 回车 → 600 → 回车即可完成定时。选项8可以取消定时。

2022-07-20

Java8的LocalDateTime工具类,包含一些比较常用的功能。

LocalDateTime常用操作工具类,主要包括的工具如下: - LocalDateTime转为Date - Date转为LocalDateTime - LocalDateTime转为String(yyyy-MM-dd HH:mm:ss) - LocalDateTime转为String - String转为LocalDateTime - LocalDateTime转为Unix时间戳 - Unix时间戳转为LocalDateTime - LocalDateTime转为Java时间戳(TimeMillis) - Java时间戳(TimeMillis)转为LocalDateTime - 获取年的开始时间 - 获取某年的开始时间 - 获取年的结束时间 - 获取某年的结束时间 - 获取月的开始时间 - 获取某月的开始时间 - 获取月的结束时间 - 获取某月的结束时间 - 获取日的开始时间 - 获取某日的开始时间 - 获取日的结束时间 - 获取某日的结束时间

2022-07-06

CSDN备份工具,可用于备份CSDN文章,防止丢失

自己用Java开发的一款CSDN文章备份工具,已转换为exe格式(但仍需要电脑有JRE),可用于备份CSDN文章。 备份完成后的文章是HTML格式,会按照专栏分类,建议每篇文章只设置一个专栏。 使用非常简单,压缩包里有使用说明。

2022-06-02

Java校验参数工具类

这是自己开发的一个参数校验的工具类,可用于对实例的属性进行非空校验。包括全部校验和任一校验两种校验方式。 举例:CheckParamsUtils.checkParamsAll(requestBean, "name", "age","gender");

2022-06-02

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

TA关注的人

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