力扣面试经典150题
文章平均质量分 72
crystalkkkk
这个作者很懒,什么都没留下…
展开
-
【力扣面试经典150题】day6 209. 长度最小的子数组
已解答中等给定一个含有n个正整数的数组和一个正整数target找出该数组中满足其总和大于等于target的长度最小的,并返回其长度如果不存在符合条件的子数组,返回0。2子数组[4,3]是该条件下的长度最小的子数组。10如果你已经实现O(n)时间复杂度的解法, 请尝试设计一个时间复杂度的解法。原创 2023-10-24 10:17:08 · 56 阅读 · 0 评论 -
【力扣面试经典150题】day2 27.移除元素
如果要移除的元素恰好在数组的开头,例如序列 [1,2,3,4,5],当 val为 1 时,我们需要把每一个元素都左移一位。例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。对比右指针对应的值和要求的值,如果相同则右指针向右,左指针不变。确保左指针之前的所有值就是最后输出的结果要求的值,即最后输出数组[0,left]的值。2、如果左指针的元素等于val,把右指针的值赋值到左指针位置,然后右指针左移一位。元素的顺序可以改变。原创 2023-10-17 19:22:01 · 67 阅读 · 0 评论 -
【力扣面试经典150题】day1 88. 合并两个有序数组
给你两个按排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你nums2到nums1中,使合并后的数组同样按排列。最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m + n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。需要合并 [1,2,3] 和 [2,5,6]。合并结果是 [,2,,5,6] ,其中斜体加粗标注的为 nums1 中的元素。[1]原创 2023-10-17 19:43:35 · 92 阅读 · 0 评论 -
【力扣面试经典150题】day3 26. 删除有序数组中的重复项
给你一个的数组nums,请你删除重复出现的元素,使每个元素,返回删除后数组的新长度。元素的应该保持。然后返回nums中唯一元素的个数。考虑nums的唯一元素的数量为k,你需要做以下事情确保你的题解可以被通过:更改数组nums,使nums的前k个元素包含唯一元素,并按照它们最初在nums中出现的顺序排列。nums的其余元素与nums的大小不重要。返回k。系统会用下面的代码来测试你的题解:// 输入数组// 长度正确的期望答案// 调用i < k;i++) {原创 2023-10-19 15:55:51 · 158 阅读 · 0 评论 -
【力扣面试经典150题】day4 80. 删除有序数组中的重复项 II
(中等)给你一个有序数组nums,请你删除重复出现的元素,使得出现次数超过两次的元素,返回删除后数组的新长度。不要使用额外的数组空间,你必须在修改输入数组并在使用 O(1) 额外空间的条件下完成。为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下://是以“引用”方式传递的。也就是说,不对实参做任何拷贝// 在函数里修改输入数组对于调用者是可见的。原创 2023-10-20 17:08:37 · 85 阅读 · 1 评论 -
【力扣面试经典150题】day5 125. 验证回文串
需要更加熟悉对Java的string类和char类的基础函数。replaceAll函数第一个参数可以是正则式str.toLowerCase() string类转变为小写字母string类翻转Character.isLetterOrDigit(s.charAt(left)) 判断char字符是否是字母或数字s.charAt(left) string类下标为left的字符Character.toLowerCase(s.charAt(left)) 将字符变为小写字符。原创 2023-10-20 17:53:51 · 78 阅读 · 1 评论