- 博客(4)
- 收藏
- 关注
原创 算法篇——双指针(实现O(n)删除多个元素)
双指针技术指的是在遍历数据结构的过程中,使用两个指针(通常是索引或引用)来同时操作或比较数据。这两个指针可以以相同的方向移动,也可以以相反的方向移动,具体取决于问题的需求。滑动窗口是指使用两个指针维护一个动态的窗口(子数组或子串),通过移动指针来调整窗口的大小和位置。对撞指针是指在有序的数组中,使用两个指针分别指向数组的开头和结尾,然后从两端向中间遍历数组。快慢双指针,当有元素不被删除时则存在慢指针的位置,最后慢指针的大小就是删除之后数组的长度。好了,理论介绍到,开始进入今天的主题,的,像图片中,我们在。
2025-03-16 22:31:16
799
原创 算法篇——一维差分
下面正式开始讲述一维差分的使用,我们先把原来的数组计算结果输出一下,方便与差分数组比对,因为题目数据有点简单,所以自己造了一个数据。一维差分数组(Difference Array)是一个辅助数组,用于记录原数组中相邻元素之间的差值。拿第一个修改举例,是A[1] + 5,A[2] + 5,A[3] + 5,然后看一眼我们的差分公式。:需要对数组的某个区间进行统一的更新操作,例如将数组中某个区间的所有元素都加上一个常数。那如果给A[i-1]和A[i-2]都加上5呢?其中,n 是数组的长度。
2025-03-15 23:07:18
1505
1
原创 算法篇——一维前缀和
那么这个其实就是我们的一维前缀和了,我们先对数组整体求和,但结果却是不尽人意,只过了四个点剩下六个超时了。我们将上面的代码照着这个思路改造一下,就会。那么问题出在哪里呢,很显然是在。,我们能怎么表示呢,首先会有。求出S[l,r]的值时,会有。那么这时候就需要用到了。之前我们先来看一道题。
2025-03-14 20:03:00
486
原创 算法篇——二分查找
今天闲来无事,决定在CSDN上发布我的第一篇文章,与大家分享一下算法。二分查找是一种高效的在有序数组中查找特定元素的算法,其核心思想是通过反复将查找范围减半来快速定位目标元素。
2025-03-13 23:26:33
1835
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人