- 博客(19)
- 收藏
- 关注
原创 leetcode——41.缺失的第一个正数(java)
i+1,且这个nums[i]属于[1, len]中,那就将数组中下标为i的值和下标为nums[i]-1的值进行交换。这里对复杂度进行判断,首先由于利用的是题目给的nums,交换操作的空间复杂度为O(1),总的空间复杂度为O(1)。在时间复杂度上,每一个位置上的数只访问了一遍,可能有些伙伴要问交换到i位置后的数还要再访问一次,因为交换后的数已经在正确位置上,会直接跳过,并不会进行多余的访问。这题给我一个新的解题方法,通过将给定的数组nums作为一个哈希表,这样一来空间复杂度就可以是O(1)。
2025-06-04 17:35:22
339
原创 leetcode--37.解数独(回溯法)
这题是典型的棋盘问题,一般可以通过回溯法进行解答。回溯问题可以统一的抽象成一颗n叉树,宽度主要通过for循环进行处理,层高通过递归进行处理。这题我们可以知道每个空格都可以至多填写9种数字(1-9),那么这颗树的宽度就是9,层高最高为9*9,即最多需要填写81个空格。我们在填写每一个空格处都需要判断是否满足解的三种条件,如果满足则进入递归,寻找下一个空格能够填写的数字,直至我们将所有空格填写完毕。编写一个程序,通过填充空格来解决数独问题。数独部分空格内已填入了数字,空白格用。
2025-05-29 16:57:11
286
原创 leetcode--25.K个一组翻转链表
链表可以分解成两个部分,链表前k个节点和后后面的节点,再翻转了前k个节点之后,使用递归的方式获取后面翻转节点,并与前k个节点进行拼接。对于翻转节点的方法,我们可以从头至第k个节点遍历,遍历到一个节点就将该节点放到新组成的链表头部,一直到第k个节点遍历完成。是一个正整数,它的值小于或等于链表的长度。你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。的整数倍,那么请将最后剩余的节点保持原有顺序。个节点一组进行翻转,请你返回修改后的链表。
2025-05-13 18:51:47
249
原创 leetcode--24.两两交换链表中的节点(java)
给出一个链表link,要求从头至尾将链表两两交换,例如1234->2143,123->213,12345->21435
2025-05-12 15:48:02
207
原创 leetcode--18.四数之和
给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组
2025-04-25 14:59:23
268
原创 Leetcode——16.最接近的三数之和
给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。
2025-04-21 16:52:05
546
原创 Leetcode--整型转罗马数字
我们可以将其分为4类符号数组cha[3],个位数字:I、V、X;十位数字:X、L、C;百位数字:C、D、M;设置一个cnt计数器,计数处理到哪一位数字,决定需要使用对应的符号数组。:向str中添加temp-5次cha[0]以及一次cha[1]:则将cha[0]重复temp次添加至str中。:向str中分别添加cha[1]和cha[0]最后将str反转就可以得到转换的罗马字符串。:向str中添加cha[1]:向str中添加cha[2]
2025-04-17 11:13:08
978
原创 Leetcode —— 11.盛最多水的容器
有短板效应,我们容易得到,最多可容纳的水为maxNum = min(height[lk],height[rk]) * (rk-lk);则针对rk的容器体积在此时达到最大,我们就需要去寻找针对lk的容器最大的情况,则必须将rk--,排除rk的情况。这种情况移动之后的容器大小为height[rk]*(rk-1-lk),很容易看出,容器的高没有边,但是长度变小了,容器体积变小。那么lk移动之后的容器大小为height[lk+1]*(rk-lk-1),,则可以得到由边界rk组成的容器在当前状态下是容量最大的。
2025-04-16 10:36:41
473
原创 leetcode——8.字符串转换整数
例如s = “ -042”,输出为-42。s = " - 01",输出为0。s = " --1",输出为0。s=" -1234lkdjfa",输出为-1234。将字符串从左到右遍历,第一步寻找前导空格,第二步寻找前导符号,需要注意,在前导空格寻找完毕后,需要给出标记,以便之后遇到空格直接停止遍历。最后获取s中的整数,如果没有获取整数,则输出0。3.最后输出范围为[-2^31, 2^31-1],超过这个范围的输出-2^31或者2^31 - 1;系统给出一个字符串s,用户需要获取s中的数字并输出。
2025-04-13 11:43:55
211
原创 Leetcode——整数反转
给出一个整数x,整数范围为32位有符号整数,要求需要将x从左至右翻转,保留符号位。但是需要最后翻转后的数值范围在[-2^31, -2^31 - 1]
2025-04-12 16:21:41
319
原创 Leetcode——第五题最长回文子串
最长回文子串:给定一个String类型的字符串s,要求找出字符串中的最长回文子串,回文的意思为一个字符串从前向后以及从后向前看是一样的。
2025-04-10 19:14:34
464
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅