- 博客(33)
- 收藏
- 关注
原创 LeetCode-1679. K 和数对的最大数目
摘要:题目要求从数组中移除和为k的整数对,计算最大操作次数。通过哈希表统计元素频次,对每个元素查找补数(k-key),若存在则取两者频次的较小值作为操作次数。处理时需跳过大于k的元素,并特殊处理key为k/2的情况。时间复杂度O(n),空间复杂度O(n)。(96字)
2025-06-19 09:18:04
59
原创 LeetCode-283. 移动零
本文介绍了将数组中所有零移动到末尾的原地算法。使用双指针法:左指针(l)标记待处理位置,右指针(r)寻找非零元素。当l指向0时,r找到非零元素即交换;若r指向0则继续右移。确保非零元素顺序不变,时间复杂度O(n)。示例代码展示了该思路的Go语言实现,通过指针移动和元素交换完成操作,无需额外空间。
2025-06-18 17:04:21
115
原创 LeetCode-374. 猜数字大小
摘要: 这是一个经典猜数字游戏的二分查找实现。题目要求在1到n范围内通过调用guess()接口来查找目标数字。实现采用二分查找算法,通过比较中间值与目标值的关系来不断缩小搜索范围。当guess返回-1时表示猜测值过大,调整右边界;返回1时表示猜测值过小,调整左边界;返回0时找到目标。注意在更新左边界时需要设为mid+1以避免死循环。该方法时间复杂度为O(log n),空间复杂度O(1)。
2025-06-17 16:41:48
160
原创 LeetCode-151. 反转字符串中的单词
该题目要求反转字符串中的单词顺序并处理多余空格。实现思路是:先用空格分割字符串得到单词数组,然后逆序遍历数组,跳过空串,重组单词并用单个空格连接。最后用TrimSpace去除首尾空格。Go语言实现通过strings.Split分割字符串,逆序拼接非空单词,确保结果中单词间仅有一个空格且无多余空格。时间复杂度O(n),空间复杂度O(n)。
2025-06-16 18:06:24
188
原创 LeetCode-345. 反转字符串中的元音字母
摘要:题目要求反转字符串中的所有元音字母。实现思路是先使用栈存储所有元音字母,再遍历原字符串,遇到元音字母时从栈顶取出反转后的字母。代码中定义isVowel函数判断字符是否为元音(包括大小写),reverseVowels函数使用栈结构实现反转。时间复杂度O(n),空间复杂度O(n)。该方法简洁高效地实现了元音字母的反转。
2025-06-16 17:21:41
167
原创 LeetCode-392 判断子序列
因为判断s是否是t的子序列,所以只需要遍历一遍字符串t即可,如果发现t[i] == s[k]则k++;程序运行结束如果s是t的子序列,那么t一定等于s的长度。(k 为当前s中有几位是t的子序列)字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。给定字符串 s 和 t ,判断 s 是否为 t 的子序列。
2025-04-24 12:21:15
210
原创 蓝桥杯 2021年模拟赛 扫雷问题
3、读入题目数组,注意从第一行第一列开始,第一行第一列和最后一行最后一列是存 0 的对下面res的计算具有普适性。1、把题目所需数组大小扩大两行两列通过memset初始化为0 保证下面res数组的边界不会越界。4、通过题目条件把已知num数组的周围八个放个的地雷计数存入结果数组res。简单的读入计算输出问题,暴力解即可。用更大的存储空间换取编码的便捷。2、把数组所有元素初始话为0。
2025-04-24 12:20:57
454
原创 蓝桥杯 2018省赛 分数
题目描述每项是前一项的一半,如果一共有 20 项,求这个和是多少,结果用分数表示出来。类似:3/2,当然,这只是加了前 2 项而已。分子分母要求互质。
2025-04-24 12:20:32
243
原创 LeetCode Hot100 跳跃游戏
给你一个非负整数数组 nums ,你最初位于数组的 第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回 true;否则,返回 false。
2025-04-23 16:38:28
327
原创 docker stat xxx.yml: no such file or directory
docker stat xxx.yml: no such file or directory
2025-04-22 17:39:22
260
原创 LeetCode每日一题 对角线上的质数
如果存在整数 i ,使得 nums[i][i] = val 或者 nums[i][nums.length - i - 1]= val ,则认为整数 val 位于 nums 的一条对角线上。解释:数字 1、3、9、10 和 17 是所有满足"位于至少一条对角线上"的数字。在上图中,一条对角线是 [1,5,9] ,而另一条对角线是 [3,5,7]。输入:nums = [[1,2,3],[5,17,7],[9,11,10]]输入:nums = [[1,2,3],[5,6,7],[9,10,11]]
2025-03-18 22:04:03
247
原创 LeetCode Hot100 - 相交链表
输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,6,1,8,4,5], skipA = 2, skipB = 3。输入:intersectVal = 2, listA = [1,9,1,2,4], listB = [3,2,4], skipA = 3, skipB = 1。从各自的表头开始算起,链表 A 为 [4,1,8,4,5],链表 B 为 [5,6,1,8,4,5]。解释:相交节点的值为 2 (注意,如果两个链表相交则不能为 0)。
2025-03-17 23:27:37
1169
1
原创 Java实习面试经历
redis中的key的上限是只与内存大小有关吗?在Java中有哪些集合,你使用过哪些集合?如果一张表的写入操作特别多还适合加索引吗?设计模式有很多种类,你了解的都有哪些?刚刚说到集合,集合的遍历方式有哪些?说一下Spring框架的核心思想?Linux杀死一个进程有什么指令?你了解过Linux的哪些指令?你对数据库的索引有哪些了解?一张表适不适合加大量的索引?你对redis的了解有哪些?你想在实习的过程中收获什么?说一下时间复杂度的概念?你之前有过实习经历吗?数据库你都用的有哪些?SQL语句的执行顺序?
2025-03-15 20:15:15
512
原创 LeetCode Hot100 移动零
编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。输入: nums = [0,1,0,3,12]进阶:你能尽量减少完成的操作次数吗?输出: [1,3,12,0,0]输入: nums = [0]
2025-03-11 23:39:31
338
原创 LeetCode每日一题-2025.3.11 数组美丽值求和
给你一个下标从 0 开始的整数数组 nums。输入:nums = [2,4,6,4]输入:nums = [1,2,3]输入:nums = [3,2,1],如果上述条件全部不满足。,且不满足前面的条件。的 美丽值的总和。
2025-03-11 23:11:37
316
原创 LeetCode Hot100 - 最长连续序列
找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。最长数字连续序列是 [1, 2, 3, 4]。请你设计并实现时间复杂度为。给定一个未排序的整数数组。
2025-03-10 23:16:22
250
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人