自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(639)
  • 问答 (1)
  • 收藏
  • 关注

原创 java项目实战之SSM(springmvc spring mybatis)的配置文件总结以及这些配置文件之间的关系

下图就是他们的一些关系:然后给一些相关文件以参考:1.pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM...

2020-04-14 12:52:49 349

原创 Java主流技术栈SSM+SpringBoot商铺系统项目实战错误之利用MySQLworkbench数据库建表错误

今天来分享一个很迷,但是又很难找到的错误,这个错误真的是花了我一个大下午的时间啊,百度半天也没有找到问题所在,之前没有用过MySQLworkbench,我本来以为他可能会有一些特别的操作,但其实问题真的是很简单啊。首先分享一段我创建表的代码:CREATE TABLE `tb_area` ( `area_id` INT(2) NOT NULL AUTO_INCREMENT, `are...

2020-04-13 18:41:48 686

原创 java面经查缺补漏之四十三天(今天来学习消息队列的理论知识)

参考:https://www.cnblogs.com/williamjie/p/12053005.html1.为什么使用消息队列?解耦,异步,削峰。2.使用消息队列有什么缺点?(1)系统可用性降低:你想呀,本来其他系统只要运行好好的,那你的系统就是正常的。现在你非要加入个消息队列进去,那消息队列挂了,你的系统不是呵呵了。因此,系统可用性会降低(2)系统复杂性增加:加入了消息队列...

2020-04-12 15:24:09 217

原创 java面经查缺补漏之四十二天(今天来学习nginx的理论知识)

参考:1.https://blog.csdn.net/hustspy1990/article/details/102989305?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5&utm_source=distribute.pc_relevant.none...

2020-04-12 14:22:17 286

原创 Leetcode刷题java之547. 朋友圈(一天一道编程题之五十五天)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了99.92% 的用户内存消耗 :40.7 MB, 在所有 Java 提交中击败了94.03%的用户题目:班上有 N 名学生。其中有些人是朋友,有些则不是。他们的友谊具有是传递性。如果已知 A 是 B 的朋友,B 是 C 的朋友,那么我们可以认为 A 也是 C 的朋友。所谓的朋友圈,是指所有朋友的集合...

2020-04-12 09:37:01 796

原创 java面经查缺补漏之四十一天(今天学redis实现分布式锁)

1.如何实现redis分布式锁?参考:https://www.cnblogs.com/williamjie/p/9395659.html参考:https://mp.weixin.qq.com/s?__biz=MzIxMjE5MTE1Nw==&mid=2653194065&idx=1&sn=1baa162e40d48ce9b44ea5c4b2c71ad7&ch...

2020-04-11 20:48:10 375 1

原创 java面经查缺补漏之四十天(今天来补充几个算法计数排序,桶排序)

1.计数排序(桶排序的特殊情况,只是每个桶只有一个数)用于那些数字比较集中的,并且在一定范围内的,其实就是用hash数组先记录一下次数而已public static void jishusort(int[] array) { int max=Integer.MIN_VALUE; int min=Integer.MAX_VALUE; ...

2020-04-11 18:46:07 288

原创 java面经查缺补漏之三十九天(继续努力)

1.什么时候用原子操作类,举个例子?比如一个自增的操作就可以用原则操作类,原子操作类底层用的就是CAS。2.什么时候用volitile,举个例子?比如一个boolean的flag,因为它与上个状态无关。3.手写程序,10个多线程保证 i从0加到10?可以用原子操作类来实现import java.util.concurrent.atomic.AtomicInteger;...

2020-04-11 15:32:42 371

原创 Leetcode刷题java之376. 摆动序列(一天一道编程题之五十四天)

执行结果:通过显示详情执行用时 :0 ms, 在所有 Java 提交中击败了100.00% 的用户内存消耗 :37 MB, 在所有 Java 提交中击败了8.33%的用户题目:如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列。第一个差(如果存在的话)可能是正数或负数。少于两个元素的序列也是摆动序列。例如, [1,7,4,9,2,5] 是一个摆动序列...

2020-04-11 10:14:50 318

原创 java面经查缺补漏之三十八天(今天来学习redis)

本文参考:https://blog.csdn.net/qq939419061/article/details/105102777/挑出其中一些我目前还未掌握的知识点,进行研究,详情更加具体的复习,可参考上面的链接,我认为这篇redis总结的还是很全很清楚的。1.什么是缓存雪崩?另外对于 “Redis 挂掉了,请求全部走数据库” 这样的情况,我们还可以有如下的思路:事发前:实现 ...

2020-04-10 20:32:30 273

原创 java面经查缺补漏之三十七天(加油)

1.CAS机制进阶,它的底层是怎么实现的,如何解决ABA问题?参考:https://mp.weixin.qq.com/s?__biz=MzIxMjE5MTE1Nw==&mid=2653192736&idx=1&sn=24d4054b062e28db9e54c735aafe2407&chksm=8c99f0fabbee79ecfd9198aa89bc78084e9...

2020-04-10 19:34:48 178

原创 java面经查缺补漏之三十六天(前天面试完美团,不知道是否凉凉,今天主要学生产者消费者模型)

1.手写一个生产者消费者模型?参考:https://blog.csdn.net/u010983881/article/details/78554671?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4&utm_source=distribute.pc_re...

2020-04-10 18:05:25 282

原创 Leetcode刷题java之659. 分割数组为连续子序列(一天一道编程题之五十三天)

执行结果:通过显示详情执行用时 :36 ms, 在所有 Java 提交中击败了58.08% 的用户内存消耗 :41.8 MB, 在所有 Java 提交中击败了50.00%题目:输入一个按升序排序的整数数组(可能包含重复数字),你需要将它们分割成几个子序列,其中每个子序列至少包含三个连续整数。返回你是否能做出这样的分割?示例 1:输入: [1,2,3,3,4,5...

2020-04-10 09:56:24 572

原创 java面经查缺补漏之三十五天(最近学习有些浮躁,要沉下心来)

最近学习有些浮躁,要沉下心来1.总是提到CAS,那么它是怎么用的呢?原子操作类的底层就使用了CAS,所谓原子操作类,指的是java.util.concurrent.atomic包下,一系列以Atomic开头的包装类。例如AtomicBoolean,AtomicInteger,AtomicLong。它们分别用于Boolean,Integer,Long类型的原子性操作。2.什么是sprin...

2020-04-09 21:01:39 239

原创 Leetcode刷题java之124. 二叉树中的最大路径和(一天一道编程题之五十二天)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了99.80% 的用户内存消耗 :41.5 MB, 在所有 Java 提交中击败了15.00%的用户题目:给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3]...

2020-04-06 15:54:21 269

原创 Leetcode刷题java之454. 四数相加 II(一天一道编程题之五十一天)

执行结果:通过显示详情执行用时 :76 ms, 在所有 Java 提交中击败了93.35% 的用户内存消耗 :58.8 MB, 在所有 Java 提交中击败了26.13%的用户题目:给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。为了使问题简单化,所...

2020-04-06 13:50:54 225

原创 Leetcode刷题java之329. 矩阵中的最长递增路径(一天一道编程题之五十天)

执行结果:通过显示详情执行用时 :11 ms, 在所有 Java 提交中击败了73.70% 的用户内存消耗 :39.7 MB, 在所有 Java 提交中击败了53.41%的用户题目:给定一个整数矩阵,找出最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。示例 1:输入: nums =...

2020-04-05 16:09:15 246

原创 Leetcode刷题java之295. 数据流的中位数(一天一道编程题之四十九天)

执行结果:通过显示详情执行用时 :959 ms, 在所有 Java 提交中击败了7.11% 的用户内存消耗 :49.6 MB, 在所有 Java 提交中击败了100.00%的用户题目:中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。例如,[2,3,4] 的中位数是 3[2,3] 的中位数是 (2 + 3) / 2 = 2.5设计一...

2020-04-05 15:26:42 248

原创 Leetcode刷题java之200. 岛屿数量(一天一道编程题之四十九天)

执行结果:通过显示详情执行用时 :2 ms, 在所有 Java 提交中击败了95.44% 的用户内存消耗 :42.4 MB, 在所有 Java 提交中击败了5.55%的用户题目:给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。示例 1:...

2020-04-05 12:40:25 296

原创 Leetcode刷题java之130. 被围绕的区域(一天一道编程题之四十八天)

执行结果:通过显示详情执行用时 :2 ms, 在所有 Java 提交中击败了98.04% 的用户内存消耗 :41.9 MB, 在所有 Java 提交中击败了42.13%的用户题目:给定一个二维的矩阵,包含 'X' 和 'O'(字母 O)。找到所有被 'X' 围绕的区域,并将这些区域里所有的 'O' 用 'X' 填充。示例:X X X XX O O XX X ...

2020-04-05 12:18:26 284

原创 Leetcode刷题java之128. 最长连续序列(一天一道编程题之四十七天)

执行结果:通过显示详情执行用时 :5 ms, 在所有 Java 提交中击败了83.59% 的用户内存消耗 :39.5 MB, 在所有 Java 提交中击败了5.25%的用户题目:给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。示例:输入: [100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1,...

2020-04-04 10:02:55 325

原创 Leetcode刷题java之208. 实现 Trie (前缀树)(一天一道编程题之四十六天)

执行结果:通过显示详情执行用时 :56 ms, 在所有 Java 提交中击败了47.39% 的用户内存消耗 :49.1 MB, 在所有 Java 提交中击败了100.00%的用户题目:实现一个 Trie (前缀树),包含 insert, search, 和 startsWith 这三个操作。示例:Trie trie = new Trie();trie.inser...

2020-04-03 18:09:18 225

原创 java面经查缺补漏之三十四天(聊聊二叉查找树,AVL树和红黑树)

1.既然有了二叉查找树和AVL树,为什么还要红黑树?二叉查找树,左边的节点小于当前节点,右边的节点大于当前节点,以此来提高查找的效率。但是当它不平衡的时候,节点都在一端的时候,就退化成了链表。为了解决这个问题,就出现了AVL树,平衡树,它具有二叉查找树的特点,又加入了一个约束,左右的高度差小于等于1,破坏平衡的话,就进行左旋或者右旋操作,但是由于这个限制比较严格,使得每次都需要维持平衡,代价太...

2020-04-03 15:46:18 231

原创 java面经查缺补漏之三十三天(继续数据库方面的)

1.一条sql语句执行很慢的原因?(1)平常还好但是偶尔很慢第一种,在进行更新等操作的时候,并不是立刻进行持久化,而是先写到日志当中,等数据库空闲的时候,再进行持久化。如果数据库一直忙的话,更新操作又很频繁,日志就满了,数据库不得不去全身心的完成持久化操作。这个时候你再执行sql语句就会很慢了。第二种,拿不到锁,等待别人释放锁。可以通过show processlist来查看当前的状态,...

2020-04-02 20:35:59 249

原创 Leetcode刷题java之84. 柱状图中最大的矩形(一天一道编程题之四十五天)

执行结果:通过显示详情执行用时 :2 ms, 在所有 Java 提交中击败了99.31% 的用户内存消耗 :41.2 MB, 在所有 Java 提交中击败了54.29%的用户题目:给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 ...

2020-04-02 18:11:24 211

原创 Leetcode刷题java之41. 缺失的第一个正数(一天一道编程题之四十四天)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了93.17% 的用户内存消耗 :38.1 MB, 在所有 Java 提交中击败了5.34%的用户题目:给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数。示例 1:输入: [1,2,0]输出: 3示例 2:输入: [3,4,-1,1]输出: 2示例 3:...

2020-04-02 15:56:09 212

原创 Leetcode刷题java之42. 接雨水(一天一道编程题之四十三天)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了99.96% 的用户内存消耗 :39.6 MB, 在所有 Java 提交中击败了11.87%的用户题目:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情...

2020-04-02 15:02:00 413

原创 Leetcode刷题java之91. 解码方法(一天一道编程题之四十二天)(动态规划)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了100.00% 的用户内存消耗 :37.8 MB, 在所有 Java 提交中击败了5.07%的用户题目:一条包含字母 A-Z 的消息通过以下方式进行了编码:'A' -> 1'B' -> 2...'Z' -> 26给定一个只包含数字的非空字符串,请计算解码方法的总数。...

2020-04-01 11:58:06 264

原创 Leetcode刷题java之36. 有效的数独(一天一道编程题之四十一天)

执行结果:通过显示详情执行用时 :2 ms, 在所有 Java 提交中击败了95.75% 的用户内存消耗 :40 MB, 在所有 Java 提交中击败了98.25%的用户题目:判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1...

2020-03-31 20:21:12 303

原创 Leetcode刷题java之23. 合并K个排序链表(一天一道编程题之四十天)(优先队列)

执行结果:通过显示详情执行用时 :5 ms, 在所有 Java 提交中击败了62.48% 的用户内存消耗 :41.8 MB, 在所有 Java 提交中击败了55.30%的用户题目:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[ 1->4->5, 1->3->4, 2->6]输出: ...

2020-03-31 18:51:47 239

原创 Leetcode刷题java之10. 正则表达式匹配(一天一道编程题之三十九天)(回溯法和动态规划法)

执行结果:通过显示详情执行用时 :81 ms, 在所有 Java 提交中击败了27.43% 的用户内存消耗 :40.4 MB, 在所有 Java 提交中击败了24.44%的用户题目:给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配。'.' 匹配任意单个字符'*' 匹配零个或多个前面的那一个元素所谓匹配,是要涵...

2020-03-31 16:38:28 377

原创 Leetcode刷题java之4. 寻找两个有序数组的中位数(一天一道编程题之三十八天)

执行结果:通过显示详情执行用时 :3 ms, 在所有 Java 提交中击败了84.62% 的用户内存消耗 :41.1 MB, 在所有 Java 提交中击败了98.28%的用户题目:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nu...

2020-03-31 14:13:44 221

原创 Leetcode刷题java之242. 有效的字母异位词(一天一道编程题之三十七天)

执行结果:通过显示详情执行用时 :2 ms, 在所有 Java 提交中击败了99.94% 的用户内存消耗 :39.5 MB, 在所有 Java 提交中击败了5.08%的用户题目:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:...

2020-03-31 11:21:55 231

原创 Leetcode刷题java之341. 扁平化嵌套列表迭代器(一天一道编程题之三十六天)

执行结果:通过显示详情执行用时 :4 ms, 在所有 Java 提交中击败了68.89% 的用户内存消耗 :42.1 MB, 在所有 Java 提交中击败了5.68%的用户题目:给你一个嵌套的整型列表。请你设计一个迭代器,使其能够遍历这个整型列表中的所有整数。列表中的每一项或者为一个整数,或者是另一个列表。其中列表的元素也可能是整数或是其他列表。示例 1:...

2020-03-31 11:00:29 284

原创 Leetcode刷题java之380. 常数时间插入、删除和获取随机元素(一天一道编程题之三十五天)

执行结果:通过显示详情执行用时 :12 ms, 在所有 Java 提交中击败了97.16% 的用户内存消耗 :45.2 MB, 在所有 Java 提交中击败了69.40%的用户题目:设计一个支持在平均 时间复杂度 O(1) 下,执行以下操作的数据结构。 insert(val):当元素 val 不存在时,向集合中插入该项。 remove(val):元素 v...

2020-03-31 10:14:06 249

原创 Leetcode刷题java之412. Fizz Buzz(一天一道编程题之三十四天)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了100.00% 的用户内存消耗 :41.8 MB, 在所有 Java 提交中击败了5.08%的用户题目:写一个程序,输出从 1 到 n 数字的字符串表示。1. 如果 n 是3的倍数,输出“Fizz”;2. 如果 n 是5的倍数,输出“Buzz”;3.如果 n 同时是3和5的倍数,输出 “...

2020-03-30 18:45:12 243

原创 Leetcode刷题java之146. LRU缓存机制(一天一道编程题之三十三天)

执行结果:通过显示详情执行用时 :29 ms, 在所有 Java 提交中击败了41.46% 的用户内存消耗 :53.5 MB, 在所有 Java 提交中击败了71.48%的用户题目:运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果密钥 (ke...

2020-03-30 16:10:42 276

原创 java面经查缺补漏之三十二天(java与C++的区别,java与python的一些区别)

一、指针Java 没有指针的概念。在 C/C++中,指针操作内存时,经常会出现错误。而在Java中是没有指针这一概念的,因此也有效地防止了一系列由指针引起的操作层失误(如指针悬空所造成的系统崩溃),更有利于 Java 程序的安全。二、多重继承Java不支持多重继承。多重继承,它允许多父类派生一个子类。也就是说,一个类允许继承多个父类。尽管多重继承功能很强,但使用复杂,而且会引起许多麻烦...

2020-03-24 15:12:16 261

原创 Leetcode刷题java之395. 至少有K个重复字符的最长子串(一天一道编程题之三十二天)

执行结果:通过显示详情执行用时 :1 ms, 在所有 Java 提交中击败了78.25% 的用户内存消耗 :37.7 MB, 在所有 Java 提交中击败了8.10%的用户题目:找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k 。输出 T 的长度。示例 1:输入:s = "aaabb", k = 3输出:3...

2020-03-24 11:28:05 354

原创 java面经查缺补漏之三十一天(今天来学习网络编程,如何学习网络编程)

网络编程,本来想学java网络编程这本书,不过看了一点之后感觉这本书写得不太好,豆瓣评分也不是很高,所以计划以博客的方式学习吧。1.首先来看一下网络编程的概况,如何学习网络编程?...

2020-03-23 20:42:35 227

空空如也

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

TA关注的人

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