Leetcode刷题
文章平均质量分 89
爱分享的浩然
这个作者很懒,什么都没留下…
展开
-
【力扣刷题-滑动窗口篇】2134. 最少交换次数来组合所有的 1 II的定长滑动窗口解法
我要交换,肯定本质上是把0的位置交换成1,形成一个全1的窗口。所以我就要先把1的个数统计出来,作为窗口的大小,然后按照这个定长的窗口从左到右移动,每次去看窗口内0的个数什么时候最小。原创 2024-04-26 09:12:17 · 600 阅读 · 1 评论 -
【力扣刷题-数组篇】35. 搜索插入位置的二分法与Java代码
如果找不到,left最后停的位置就是要插入的位置,因为它left最终一定指向比target大的第一个元素,这就是需要插入的位置。原创 2024-04-20 18:48:06 · 656 阅读 · 0 评论 -
【力扣刷题-数组篇】34. 在排序数组中查找元素的第一个和最后一个位置的思路和Java详细代码
找到之后直接开始左移,比如[1,2,2,2,3,4],找到nums[2] = 2,开始左移,while(mid>0 && nums[--mid] == target) result[0] = mid;它是直接在当前mid索引减1开始判断的,所以这个循环结束,mid会是0。然后while(mid原创 2024-04-20 18:56:36 · 824 阅读 · 0 评论 -
【力扣刷题-数组篇】27. 移除元素的左右指针和快慢指针解法(附Java代码)
要非常熟悉左右指针和快慢指针的区别,**快慢指针是:快指针如果不是val,就把快指针的值赋值给慢指针,慢指针++。左右指针是:左指针如果是val,就把右指针的值赋值过来,右指针--,只有左指针不是val才左指针++**。原创 2024-02-26 19:47:18 · 785 阅读 · 0 评论 -
【力扣刷题-数组篇】704. 二分查找的思路和Java详细代码
二分查找是一种在已排序数组中查找特定元素的高效算法。初学者可能不太理解其中的思路,本文带大家详细梳理一下。原创 2024-02-26 19:10:57 · 969 阅读 · 0 评论