- 博客(16)
- 收藏
- 关注
原创 非对称加密的经典案例-ssh密码登录/免密登录
在SSH协议中,输入密码登录和免密登录都使用了非对称加密中的公钥加密私钥解密,不同的是输入密码登录中是通过服务端生成公钥和私钥,而免密登录中是通过客户端来生成公钥和私钥。
2024-02-09 15:44:03 443 1
原创 Selector对象和epoll有什么关系?
默认的Provider实现即为DefaultSelectorProvider,通过调用create(),得到具体的SelectorProvider,这是linux操作系统下的DefaultSelectorProvider的实现。当调用Selector.open()时,选择器通过专门的工厂SelectorProvider来创建Selector的实现,Java NIO中的选择器Selector对象,依赖操作系统内核的系统调用poll和epoll。
2023-05-10 09:50:59 216
原创 Spring Boot + MyBatis连接MySQL数据源静默15分钟后断开的问题解决
1.报错问题Spring Boot + MyBatis连接MySQL数据库,静默15分钟后就会自动断开,日志中报错如下:Failed to validate connection com.mysql.jdbc.JDBC4Connection@5eb7b0fb(No operations allowed after connection closed.)2. 解决方法在SpringBoot的配置文件application.yml中的database:部分加入如下: hikari:
2022-03-10 20:33:05 2651 1
原创 1567. 乘积为正数的最长子数组长度
力扣刷题日记2022/3/71. 题目:给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度。一个数组的子数组是由原数组中零个或者更多个连续数字组成的数组。请你返回乘积为正数的最长子数组长度。2. 思路也是一道典型的动态规划的题目。动态规划的核心在于找出每次循环的递推公式,简单的动态规划的递推公式一般就是本次计算的值通过上一次计算得到的值来计算,这题就还比较简单。首先我们维护两个变量,一个叫ansPos,用来存放乘积为正数的最长子数组的长度;一个叫ansNeg,用来存放乘积为负负数
2022-03-07 16:54:57 243
原创 55. 跳跃游戏
力扣打卡2022/2/27题目给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。思路可以用动态规划的思想,递推出,每一次循环后的最大后边界点在哪。设定一个最大后边界点变量right,遍历整个数组,每次循环刷新一下right变量的值,并判断循环能否继续下去,不能继续下去就说明不能达到末端,返回false。如果循环能够正常结束,返回true。Java代码class Solution {
2022-02-27 14:26:58 3303
原创 198.打家劫舍-力扣刷题笔记-动态规划
题目:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。思路:首先应该是一道动态规划问题。我可以建立一个数组money,这个数组的第i个元素是以小偷从左到右依次开始偷,然后偷到第i个房子那,偷到的现金数。用一个循环依次求每个数组元素的值。第i个元素的值应
2022-02-24 23:20:33 167
原创 剑指 Offer 33
剑指 Offer 33. 二叉搜索树的后序遍历序列输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。0. 编程语言1. 解题思路2. 递归算法代码如下0. 编程语言Java1. 解题思路首先要明白两个概念:二叉搜索树:对于每一个节点来说,其左子树的所有节点的值都小于该节点的值,右子树的所有节点的值都大于该节点的值。后序遍历:遍历每个节点时,先遍历其左节点,再遍历其右节点,最后遍历中
2022-02-01 10:29:26 205
原创 2139. 得到目标值的最少行动次数
题目你正在玩一个整数游戏。从整数 1 开始,期望得到整数 target 。在一次行动中,你可以做下述两种操作之一:递增,将当前整数的值加 1(即, x = x + 1)。加倍,使当前整数的值翻倍(即,x = 2 * x)。在整个游戏过程中,你可以使用 递增 操作 任意 次数。但是只能使用 加倍 操作 至多 maxDoubles 次。给你两个整数 target 和 maxDoubles ,返回从 1 开始得到 target 需要的最少行动次数。题解循环写法class Solution {
2022-01-19 16:49:29 2646
原创 存在重复元素
力扣打卡 2022/1/19给你一个整数数组 nums 和一个整数 k ,判断数组中是否存在两个 不同的索引 i 和 j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k 。如果存在,返回 true ;否则,返回 false 。java代码如下:class Solution { public boolean containsNearbyDuplicate(int[] nums, int k) { //题目可以转换成大小为k的滑动窗口中,有无
2022-01-19 11:14:12 442
原创 学习网络笔记
网络GET和POST方法是最主要的HTTP方法。在提交表单Form的时候可以用get方法和post方法,GET方法能够发送的数据只有几百个字节,如果表单中的数据超过这一长度,就必须使用POST方法来发送。但是PUT、DELETE方法现在常用于RESTful API的设计中,在手机App和后端服务器交互的时候就会经常用到,这一点很重要,可以给我后面做手机app和云服务器通讯做指引。...
2022-01-16 17:03:22 112
原创 springboot项目打包jar到腾讯云端IDEA
这里做一个小小的笔记。一、打包方式一种是打包成war包,这个时候需要在云服务器中部署tomcat才能够运行。第二种是打包成jar包,这种由于springboot内置了tomcat,所以只需要服务器上有jdk就可以了。需要注意的是springboot最低需要jdk1.8及以上版本。二、持续运行jar程序但是,jar包在云服务器上跑的时候,一旦关闭xhell窗口(就是那个命令黑窗),就会停掉,所以以下有两种方法解决这个问题:首先cd 到jar文件所在的文件夹。方法一(炒鸡方便):chmod
2022-01-15 16:11:14 369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人