- 博客(7)
- 收藏
- 关注
原创 Redis锁、Pipeline
Redis锁、Pipeline1.Redis锁2.Redis的pipeline1.Redis锁工作中遇到了一个和前后端配合的场景,前端实时更新资源时需要调用后端接口通知后端更新缓存,但是防止后端删除缓存的时候,前端疯狂请求后端导致穿库,所以对前端请求的缓存资源上锁。(1)前端通知后端实时更新缓存,后端对redis资源上锁,读取DB,更新缓存,释放锁。(2)前段实时读取Redis资源时,需要判断资源是否上锁,上锁表示资源正在更新,但需要设置一定的超时时间。2.Redis的pipelinePip
2021-10-24 23:20:09
238
2
原创 LeetCode. 链表求和 (Java)
Middle-Easy题注意进位和最后一步容易忽略,最后需要判断有没有进位,进位就加一位值为1的尾节点。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode addTwoNumbers
2020-07-02 10:08:56
260
原创 剑指Offer 二叉搜索树的后序遍历序列(JAVA)(递归)
剑指Offer 二叉搜索树的后序遍历序列对于剑指Offer这道题是输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。根据BST的定义:若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。所以我们先...
2019-12-02 21:47:20
122
1
原创 LeetCode 24.Swap Nodes in Pairs(JAVA)
LeetCode 24.Swap Nodes in Pairs对于Leetcode这道题是对链表的节点进行操作,对每两个节点进行反转,设置虚拟头节点更有助于操作节点,我们设置图中的四个节点对于解题的逻辑就会清楚很多,每次反转先将node1的next指向node2的next,然后将node2的next指向node1,最后再将pre的next指向node2就完成了一次反转,然后更新pre,node1...
2019-11-27 22:42:08
202
原创 LeetCode 1.Two Sum(JAVA)(对撞指针)
LeetCode 1.Two Sum对于Leetcode这道题,如果数组建立在有序的基础上,我们则可以使用对撞指针也就是双索引以O(n)的时间复杂度解决,但是当数组无序的时候,我们可以用查表的方式也就是用一个Map来解决,时间复杂度同样是O(n)。JAVA代码:import java.util.Arrays;import java.util.HashMap;import java.uti...
2019-11-24 18:24:40
114
原创 Spring+SpringMVC+Mybatis+IDEA+Maven搭建个人博客系统
项目描述:大二的JAVA课程设计,整个项目有XML配置方式和注解配置方式,后端整合了Spring、SpringMVC、Mybatis、JSP。前端使用了bootStrap、JQuery,博客显示是将Markdown解析为HTML。数据库是mysql,Navicat作为用户管理工具。Maven作为项目管理工具。开发环境:工具版本项目管理工具Maven3JDK环境J...
2019-06-24 14:48:32
2414
10
转载 Mac下启动Tomcat错误
Mac下启动Tomcat错误在bin目录下用sudo sh startup.sh启动tomcat的时候遇到这个错误,然后希望大家不要卡在这里太多时间。startup.sh: /usr/local/Tomcat/bin/catalina.sh: /bin/sh: bad interpreter: Operation not permittedstartup.sh: line 60: /usr/...
2019-03-19 00:06:25
727
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人