- 博客(236)
- 收藏
- 关注
原创 LeetCode[15]三数之和
相等添加到结果集后,我们头尾指针都要向内部移动一位吧,那么当尾指针和尾指针的前一个指针一样,那么就要给尾指针去重,头指针同理如果和头指针的后一位一样,那么头指针一样要去重,这样我们三个指针都去重过,我们的答案也就毋庸置疑了。首先一个节点来进行数组的遍历,这个节点也相当于三数之和的第一个值,两个指针分别代表另外两个值,left指针和right指针就肯定在第一个值后面的数组中遍历了,具体怎么遍历呢,就是一个在新数组的头遍历,一个在尾部遍历。这样头尾指针移动就出来结果了,但是这个结果准确吗?
2025-04-01 23:30:05
246
原创 LeetCode[383]赎金信
太简单了,没啥思路,就是暴力使用哈希表,遍历第二个数组记录都有几个值,再遍历第一个数组,相同值对应的数就减去,如果最后数组有负数,那么就gg了,如果没负数就ok。
2025-04-01 22:19:07
245
原创 LeetCode[454]四数相加Ⅱ
可以,我第一次尝试把四次方简化成二次方,但是我们一共四个数组,怎么简化成二次方,那我们就把四个数组看成两个数组,这样我们就可以使用二次方进行求解了,每两个数组进行一次n方。这道题也是一道哈希题,我们面对哈希题就可以使用数组,set和map,因为我们需要统计有几个原组和前两个数组的和,所以我们使用map来搞。后两个数组使用n方进行和的相加,如果我们想结果=0,那么前两个数组和后两个数组的和一定是相反数,如果相加=0了,那么我们就将一开始存的value相加到结果中就行了。
2025-03-21 17:36:34
224
原创 LeetCode两数之和
这种题就是哈希题,可以使用哈希来解决,哈希就可以分为数组,set和map,因为我们这到底要记录数组下标和下标对应的数,所以我们需要选择map来解决,我们遍历这个数组,每遍历到一个数都和target减一下,减之后的这个值我们设置为balance,如果这个map中有这个balance,我们就可以返回当前的下标和map中对应数字的下标。如果map中没有这个balance,那就把当前数字和下标存入map中就可以了,直到找到两数之和。
2025-03-21 17:27:51
250
原创 LeetCode[349]两个数组的交集
一字:暴力 QAQ,就俩set,两个数组往里扔,然后俩set一个retainAll, 然后再把set转换成int数组,使用stream看着好看点。
2025-03-20 20:43:47
76
1
原创 LeetCode[242]有效的字母异位词
因为这道题都是字母,范围比较小, 我就使用数组来操作了,26个字母,数组长度26,遍历字符串的每个字母,让它减去char的a,这就是数组下标,你要问为什么?那就是因为s.charAt(i)如果是a,那么减去a就是0,如果是b减去a就是1。遇到这种字母异位啊,比较字符串啊,就可以想到数组比较,或者set啊,map啊,都可以。
2025-03-20 20:24:48
193
2
原创 LeetCode[02.07]链表相交
说实话,一开始我没想出来为什么O(n+m)能遍历出结果,然后我看了解析,我的理解就是A链表跑完就去跑B链表,B链表跑完就去跑A链表,那总长度是一样的,跑完一圈还没有一样的,那就是不相交。那为什么跑完一圈会有一样的case呢?因为两个链表相交部分长度相同,不相交部分长度不同,两个链表相互跑就会形成一种快慢指针的感觉,这样就会导致出现相同节点的情况。
2025-03-18 23:06:37
175
原创 LeetCode[19]删除链表的倒数第N个节点
要想一次循环,一趟遍历完,那肯定是要想到双指针了,但是双指针怎么做呢?题目给出删除倒数第N个,我们如果能找到倒数第N个节点的前一个节点就行了,倒数第N个肯定是倒着数,那我们就让两个指针中间就差N个单位,当快指针走到链表最后一个的下一个null节点时,这时候慢指针就是倒数第N个节点的前一个节点了,因为快慢指针始终相差N个节点。
2025-03-17 21:46:41
203
原创 LeetCode[24]两两交换链表中的节点
就对于这种头节点发生变化的, 我觉得一般都需要一个虚拟头节点,然后无非就是让虚拟头节点的后两个节点进行交换,即找到要交换的两个节点的前一个节点,然后每次循环的时候都要记住这点,这道题就很简单了。
2025-03-17 20:53:55
265
原创 LeetCode[206]反转链表
这种题一开始我老想着用三个节点来搞,最后发现可以先两个节点试试,然后不行再三个节点,(但还是用三个节点QAQ),要反转链表肯定要搞个虚拟头节点,但是虚拟头节点还不能有数,那就设置虚拟头节点为null就行,然后剩下就是3个节点互相倒,没啥难度。
2025-03-17 20:36:59
258
原创 LeetCode[59]螺旋矩阵Ⅱ
第一个大循环先遍历圈数,一共遍历n/2圈,如果是奇数那就最后处理中间那个小点就行,然后是在每一圈有四条边,我们对每一条边进行处理,每条边采用左闭右开的区间,每条边的最后一个点交给下一条边来进行处理,这样代码就不会乱了。这种题我第一次确实没做出来,第一次做的时候一圈一圈处理,发现圈数越往里,越乱,原来之前是没从圈数开始遍历。
2025-03-17 20:25:57
229
原创 LeetCode[707]设计链表
一道中等难度的设计链表题, 一开始我给题想复杂了,我自己设计个双端链表,给我弄的有点迷糊,最后简化成单向链表来做,且只需要一个虚拟头节点即可,主要就是考虑好边界问题,在用下标来操作节点的时候都要拿到操作节点的前一个节点,这样才能操作。
2025-03-15 23:58:25
112
原创 LeetCode[203]移除链表元素
我是设置一个虚拟头节点,再设置一个用来遍历的节点,如果当前遍历的节点值和target一样,就让当前节点向下跳两个位置,如果不一样,就让当前节点走一步,设置虚拟头节点就是能省去一步判空操作。
2025-03-15 19:30:59
208
原创 LeetCode[209]长度最小的子数组
主要思路就是搞一个滑动窗口,如果滑动窗口中的和大于了target,那么就让滑动窗口的头部往前走一步,如果等于target就更新数组长度,如果小于target就更新滑动窗口末尾,这样就能使用nlog(n)的时间复杂度来解决这道题。老套路,我发现了,最近做的数组题,做不出来可以想一下双指针,如果这道题暴力遍历的话肯定很慢了,但是如果使用双指针维持一个滑动窗口的话,就会快很多。
2025-03-15 17:41:48
99
原创 LeetCode[977]有序数组的平方
如果想用一次for循环来搞出来就使用双指针的思想,具体做法就是两个指针一前一后,互相比较,根据题目要求的顺序来进行指针的移动。
2025-03-13 21:17:29
89
原创 LeetCode[704]二分查找
使用左闭右闭,while循环,终止条件就是左右区间一样了,就直接终止,如果到这里还没找到target就返回-1,如果找到了就直接返回mid。
2025-03-13 20:23:49
197
原创 错误: 找不到或无法加载主类问题(已解决)
我先clean了一下target,然后重新build,发现maven报错了,idea2023.2默认使用了内置的maven,然后我切换了一下maven版本,重新build后 可以使用了。今天在虚拟机中安装了idea2023.2的版本,运行代码时发现错误找不到主类!网上查了半天都没啥用(无语)
2024-05-15 22:14:25
458
1
原创 Redis从基础到进阶篇(四)----性能调优、分布式锁与缓存问题
本文详细介绍了Redis集群的演变、Redis和lua的整合、Redis Stream。详细的Redis分布式解决方案和实习方式,还有缓存的优化和深入理解,如果你喜欢请务必收藏
2023-09-06 12:48:40
688
原创 Redis从基础到进阶篇(三)----架构原理与集群演变
本篇介绍了Redis架构原理与集群演变,读完本篇后你会对Redis集群以及Redis的哨兵节点有一个清晰的认识,如果喜欢请收藏本篇文章吧
2023-09-04 14:24:58
883
原创 Redis从基础到进阶篇(二)----内存模型与内存优化
本篇主要介绍redis底层的内存模型,详细介绍5种数据类型的内存模型及Redis的内存设计优化等一切详细知识,相信你读完这篇文章会对你的Redis理解有很大的提升,有帮助请不要忘记给博主三连哦!!!
2023-08-26 22:18:03
1553
原创 Redis从基础到进阶篇(一)
此片先简单介绍一下Redis的基础知识,后续会推出Redis的进阶底层知识,希望你读完这篇文章能使你对Redis有更深的理解,欢迎交流,感谢观看
2023-08-20 14:30:30
1126
原创 十、用 ChatGPT 辅助写文章
用 ChatGPT 这款 AI 工具辅助编写一篇逻辑缜密、语义流程的 2000 字文章。本篇主要介绍了如何让 ChatGPT 针对某一个主题生成文章论点、生成文章大纲,然后根据大纲生成文章,最后再润色文章,就完成了一篇文章的编写。
2023-08-06 14:38:20
2242
html实现一个酒店管理平台(web课设源码+报告)
2022-11-17
html实现一个酒店管理系统
2022-11-17
html实习一个农产品销售网站设计与开发
2022-11-17
Hmtl实现一个化妆品的商城浏览效果
2022-11-15
Html+css+js装饰装修设计-html之web课设
2022-11-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人