- 博客(78)
- 收藏
- 关注
原创 Redis 面试题汇总(不定期更新)
17、Redis存储地图的数据结构,即GEO(地理位置)数据类型,有什么特点呢?1、redis几种常见的结构?10、说一说布隆过滤器,布隆过滤器的原理是什么?7、redis的缓存穿透?16、对Redis了解多吗?你觉得Redis最核心的功能是什么?3、实际项目中用到了redis哪些数据结构 用list做了什么。5、Redis除了常用的数据结构外,还熟悉其他的数据结构吗?11、redis怎么实现持久化?6、redis的过期策略?(定时、定期、惰性)4、说一说跳表的具体结构?8、怎么防止缓存击穿的问题?
2022-08-23 09:45:17
337
原创 开发BUG | @Autowired注解传入空指针
排查结果:在主测试类中没有加@RunWith(SpringRunner.class)注解,注解的作用:让测试在Spring容器环境下执行。如测试类中无此注解,将导致自动注入失败。问题还原:在对getTokenFromUser()方法进行测试时,产生空指针异常,经DEBUG发现通过@Autowired传进来的JwtUtil对象为null。...
2022-08-18 09:27:52
531
原创 数据库面试题汇总(不定期更新)
数据库设计三大范式 1 第一范式(确保每列保持原子性) 2 第二范式(确保表中的每列都和主键相关) 3 第三范式(确保每列都和主键列直接相关,而不是间接相关)每次操作前可对指定字段进行自增操作并且校验指定字段是否有发生改变,然后根据返回成功变更记录数来确定是否更新成功。1.在数据库中设计一个乐观锁?2.数据库三大范式?...
2022-08-14 21:20:40
297
原创 JVM面试题汇总(不定期更新)
4.Java中的String类为什么用final修饰?1.Java中对象到底存在堆中还是栈中?3.JVM中常量池存放在哪里?
2022-08-13 23:47:15
141
原创 剑指 Offer | 03. 数组中重复的数字
法一利用HashSet可以快速查找的特点,将元素放入HashSet中并比较。剑指Offer03.数组中重复的数字-力扣(LeetCode)法二下标法,不断交换元素,使元素与其对应下标相同,直至发生冲突。今天开个坑,刷一波剑指offer(虽然零散刷过一点。...
2022-08-01 20:27:36
98
原创 BUG | 接口返回异常数据
问题出在这行代码上,图中使用了getSortOrder函数获取sort_order进行比较排序,而检查数据库时发现sort_order项均为null,故抛出异常。Java异常处理之InvocationTargetException(反射异常)-fcyh-博客园(cnblogs.com)首先打断点发现抛出了targetException,返回的异常数据应该是来源于该异常,之后对源码进行分析(注释代码法),定位问题。在对接口进行测试时返回异常数据,这种返回格式并不是我自己定义的返回格式。...
2022-07-28 01:39:03
992
原创 Java集合面试题汇总(不定期更新)
1.判断一个集合类是否为线程安全的机制是什么?怎么判断一个Java类是否是线程安全?有那些角度?_不积跬步,无以致千里的博客-优快云博客_java怎么判断线程是否安全2.说一下 Fail-Fast 机制,结合源码说一下(如果可以的话) 相关阅读:ArrayList源码分析(扩容机制jdk8) - 掘金 (juejin.cn)1.ArrayList 初始化时数组的默认长度是多少? 默认长度为10。但是ArrayList的默认长度是有jdk版本差异的,在jdk8版本之前默认长度是10。而在jdk
2022-06-28 15:18:20
246
原创 操作系统面试题汇总(不定期更新)
1.说一下线程和进程,它们之间的区别?进程:进程是系统进行资源分配和调度的一个独立单位,是系统中的并发执行的单位。线程:线程是进程的一个实体,也是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单位,有时又被称为轻权进程或轻量级进程。区别:(1)进程是资源分配的最小单位,而线程是 CPU 调度的最小单位;(2)创建进程或撤销进程,系统都要为之分配或回收资源,操作系统开销远大于创建或撤销线程时的开销;(3)不同进程地址空间相互独立,同一进程内的线程共享同一地址空间。一个进程的线程在另一个进程内
2022-06-27 23:41:37
621
原创 Java基础面试题汇总(不定期更新)
1.Java 的八种基本数据类型,每个占多少个字节?其中比较特殊的是boolean,boolean究竟占几个字节?1、1个bit(1/8个字节):由于boolean类型的值只有true和false两种逻辑值,在编译后会使用1和0来表示,这两个数在内存中按位运算,仅需1位(bit)即可,位是计算机中最小的存储单位。2、1个字节虽然编译后1和0只需占有1位空间,但是由于计算机存储数据的最小单位是1个字节,因此boolean类型的值在实际存储的时候是用1位存储,其他7位用0填补,即true:0000 00
2022-06-27 23:07:00
265
原创 SQL | 外连接
外连接 (OUTER JOIN)分为三种1. 左外连接 (LEFT OUTER JOIN 或 LEFT JOIN):左表的记录将会全部表示出来,而右表只会显示符合搜索条件的记录,右表记录不足的地方均为NULL2. 右外连接 (RIGHT OUTER JOIN 或 RIGHT JOIN):与左(外)连接相反,右(外)连接,右表的记录将会全部表示出来,而左表只会显示符合搜索条件的记录,左表记录不足的地方均为NULL3. 全外连接 (FULL OUTER JOIN 或 FULL JOIN):左表和右表都不做
2022-06-04 14:24:41
9591
原创 SQL | 返回顾客名称和相关订单号以及每个订单的总价
返回顾客名称和相关订单号以及每个订单的总价_牛客题霸_牛客网 (nowcoder.com)https://www.nowcoder.com/practice/4dda66e385c443d8a11570a70807d250?tpId=298&tags=&title=&difficulty=0&judgeStatus=0&rp=0&sourceUrl=%2Fexam%2Foj%3Ftab%3DSQL%25E7%25AF%2587%26topicId%3D298%26fromPut%3Dpc_kol_sd_sq
2022-06-04 00:26:52
1107
原创 SQL | 计算总和
计算总和_牛客题霸_牛客网 (nowcoder.com)https://www.nowcoder.com/practice/d8a624021183454586da94d280cc8046?tpId=298&tqId=2374683&ru=/exam/oj&qru=/ta/sql-teach-yourself/question-ranking&sourceUrl=%2Fexam%2Foj%3Fpage%3D1%26tab%3DSQL%25E7%25AF%2587%26topicId%3D298注意产品
2022-06-03 17:22:22
807
原创 蓝桥杯 | 生日蜡烛
某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。答案:26public class Main{ public static void main(String[] args) { for (int i = 1; i < 100; i++) {
2022-04-01 04:41:31
182
原创 蓝桥杯 | 煤球数目
有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字答案:171700public class Main{ public static void main(String[] args) { int j = 2, sum = 1, res = 1;
2022-04-01 04:29:38
285
原创 二叉树 | LeetCode 110. 平衡二叉树
110. 平衡二叉树 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/balanced-binary-tree//** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} *
2022-03-28 21:50:30
203
原创 二叉树 | LeetCode 104. 二叉树的最大深度
104. 二叉树的最大深度 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/maximum-depth-of-binary-tree//** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode
2022-03-28 21:25:47
92
原创 二叉树 | LeetCode 101. 对称二叉树
101. 对称二叉树 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/symmetric-tree//** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * Tree
2022-03-28 21:09:20
184
原创 二叉树 | LeetCode 94. 二叉树的中序遍历
94. 二叉树的中序遍历 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/binary-tree-inorder-traversal//** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode
2022-03-28 20:35:18
70
原创 链表 | LeetCode 剑指 Offer 22. 链表中倒数第k个节点
剑指 Offer 22. 链表中倒数第k个节点 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListN
2022-03-28 18:24:06
206
原创 链表 | LeetCode 876. 链表的中间结点
876. 链表的中间结点 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/middle-of-the-linked-list//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int v
2022-03-28 18:18:09
422
原创 链表 | LeetCode 234. 回文链表
234. 回文链表 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/palindrome-linked-list//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) {
2022-03-28 17:27:35
336
原创 链表 | LeetCode 206. 反转链表
206. 反转链表 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/reverse-linked-list//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { thi
2022-03-28 17:05:03
156
原创 链表 | LeetCode 160. 相交链表
160. 相交链表 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/intersection-of-two-linked-lists//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { * va
2022-03-27 23:15:05
128
原创 链表 | LeetCode 142. 环形链表 II
142. 环形链表 II - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/linked-list-cycle-ii/submissions//** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val =
2022-03-27 22:46:56
424
原创 链表 | LeetCode 141. 环形链表
141. 环形链表 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/linked-list-cycle/submissions//** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; *
2022-03-27 22:14:24
168
原创 链表 | LeetCode 83. 删除排序链表中的重复元素
83. 删除排序链表中的重复元素 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * L
2022-03-27 18:15:53
414
原创 链表 | LeetCode 21. 合并两个有序链表
21. 合并两个有序链表 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/merge-two-sorted-lists//** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val)
2022-03-27 16:08:28
189
原创 数组 | LeetCode 283. 移动零
283. 移动零 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/move-zeroes/submissions/class Solution { public void moveZeroes(int[] nums) { if (nums == null) return; int j = 0; for (int i = 0; i < n
2022-03-27 00:22:10
388
原创 数组 | LeetCode 88. 合并两个有序数组
88. 合并两个有序数组 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/merge-sorted-array/class Solution { public void merge(int[] nums1, int m, int[] nums2, int n) { int k = m + n; int[] a = new int[k]; for (int i = 0
2022-03-26 23:49:20
801
原创 数组 | LeetCode 1. 两数之和
https://leetcode-cn.com/problems/two-sum/https://leetcode-cn.com/problems/two-sum/class Solution { public int[] twoSum(int[] nums, int target) { int n = nums.length; for (int i = 0; i < n; ++i) { for (int j = i + 1; j
2022-03-26 19:30:40
178
原创 动态规划 | LeetCode 70. 爬楼梯
https://leetcode-cn.com/problems/climbing-stairs/https://leetcode-cn.com/problems/climbing-stairs/class Solution { public int climbStairs(int n) { int dp[] = new int[n + 1]; dp[0] = 1; dp[1] = 1; for (int i = 2; i <
2022-03-26 19:15:05
420
原创 蓝桥杯 | 数列求值
【问题描述】给定数列 1, 1, 1, 3, 5, 9, 17, …,从第 4 项开始,每项都是前 3 项的和。求 第 20190324 项的最后 4 位数字答案:4659public class Main{ public static void main(String[] args) { int one = 1, two = 1, three = 1, res = 0; for (int i = 4; i <= 20190324; i++) {
2022-03-23 22:14:19
172
原创 蓝桥杯 | 平方和
【问题描述】小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包 括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。 注意,平方和是指将每个数分别平方后求和。请问,在 1 到 2019 中,所有这样的数的平方和是多少?答案:2658417853public class Main{ public static boolean check(String s) { char[] chars.
2022-03-23 22:04:35
267
原创 开发BUG | “Type definition error: [simple type, class com.example.mall.pojo.User];
今天用postman测试接口的时候遇到了这个错误"Type definition error: [simple type, class com.example.mall.pojo.User]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.example.mall.pojo.User` (no Creators, li
2022-03-03 08:20:23
1694
原创 MyBatis报错:Invalid bound statement (not found)
排查结果:application.properties配置文件中xml文件位置写错#找到xml文件位置mybatis.mapper-locations=classpath:mappers/*.xmlmappers没加s
2022-03-02 21:40:24
133
原创 JVM面试题 | 内存泄露
Java中的内存泄露——原因总结,及解决办法!_zhangkaixuan456的博客-优快云博客_java内存泄漏的原因及解决办法https://blog.youkuaiyun.com/zhangkaixuan456/article/details/108618607?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164588141516780269864343%2522%252C%2522scm%2522%253A%252220140713.1301
2022-02-26 21:23:40
115
原创 JVM面试题 | 判断垃圾可以回收的方法有哪些?
判断垃圾可以回收的方法有哪些?-帅地玩编程 (iamshuaidi.com)https://www.iamshuaidi.com/1171.html对文章中可达性分析算法的补充:
2022-02-26 00:44:11
195
原创 Java基础面试题 | 字节流和字符流有什么区别?
字节流按 8 位传输,以字节为单位输入输出数据,字符流按 16 位传输,以字符为单位输入输出数据。但是不管文件读写还是网络发送接收,信息的最小存储单元都是字节。java 字节流与字符流的区别_afa的专栏-优快云博客_java中字节流和字符流区别https://blog.youkuaiyun.com/cynhafa/article/details/6882061...
2022-02-25 03:42:52
2943
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人