自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 枚举算法-day5

将绝对值左边拆分为两个不含绝对值的条件变量存储 [0,i] 的最大值和最小值下标。

2025-04-02 20:16:18 478

原创 枚举算法-day4

用数组存储最高位 1-9 的个数。

2025-04-01 15:15:04 674

原创 枚举算法-day3

【代码】枚举算法-day3。

2025-03-30 12:11:02 508

原创 枚举算法-day2

键值对:对应数位和中最大的数。

2025-03-29 13:53:14 492

原创 枚举算法-day1

空间换时间。

2025-03-28 15:39:18 521

原创 二分算法-day3(构建二分数组)

【代码】二分算法-day3(构建二分数组)

2025-03-27 20:01:18 567

原创 二分算法-day2

函数引用数组要加 &

2025-03-26 19:21:21 508

原创 二分算法-day1(模板)

闭区间,开区间,左闭右开lower_bound 函数返回最小的满足 nums[i] >= target 的下标 istart 超出范围或者该数字不是 target ,则返回 {-1,-1}while 循环条件:当 l,r 之间没有元素了,循环结束各种下标的寻找。

2025-03-25 15:01:35 623

原创 双指针算法-day18(分组循环)

i += 2,前面两个元素满足条件,直接跳过i -- 是因为最后一个元素可能被包含在下一组。

2025-03-24 19:26:39 724

原创 双指针算法-day17(分组循环)

【代码】双指针算法-day17(分组循环)

2025-03-23 11:14:58 555

原创 双指针算法-day16(分组循环)

【代码】双指针算法-day16(分组循环)

2025-03-22 10:06:19 607

原创 双指针算法-day15(分组循环)

变为最小值需要的次数与距离有关。

2025-03-21 15:11:49 478

原创 双指针算法-day14(分组循环)

【代码】双指针算法-day14(分组循环)

2025-03-20 17:29:19 526

原创 双指针算法-day13(多指针)

当两数和 <= target,则对与左元素 L 来说,它和(L,R] 任意一个数之和均 <= target。i <= x <= j 拆分为 x <= i - 1 与 x <= j 两个问题。

2025-03-19 15:31:15 483

原创 双指针算法-day12(判断子序列)

【代码】双指针算法-day12(判断子序列)

2025-03-18 15:31:08 407

原创 双指针算法-day11(双序列双指针)

退格只对前一个元素有影响,所以从后往前遍历。

2025-03-17 20:03:20 786

原创 双指针算法-day10(双序列双指针)

【代码】双指针算法-day10(双序列双指针)

2025-03-16 11:36:55 568

原创 双指针算法-day9(双序列双指针)

【代码】双指针算法-day9(双序列双指针)

2025-03-15 13:55:28 368

原创 双指针算法-day8(同向反向双指针)

【代码】双指针算法-day8(同向反向双指针)

2025-03-15 11:19:36 479

原创 滑动窗口算法-day12(选做题)

若移动窗口后,sum > 0,说明该年龄段有可以发送的用户,更新答案;窗口左右指针为 L,R,且都是年龄,[L,R] 即为窗口年龄段。

2025-03-14 17:01:45 560

原创 滑动窗口算法-day11(不定长选做)

反向思维。

2025-03-13 20:45:01 547

原创 滑动窗口算法-day10(定长选做)

数据范围比较小,采用计数排序方法。

2025-03-12 16:54:07 565

原创 滑动窗口算法-day9(恰好型)

【代码】滑动窗口算法-day9(恰好型)

2025-03-11 15:53:12 425

原创 滑动窗口算法-day8(越短越合法子数组)

核心步骤:ans += R - L + 1;答案每次加的都是以右指针元素为核心的个数,在最短子数组情况下,在该子数组里选取多少个元素都满足条件,因此答案 + (R - L + 1);

2025-03-11 15:07:16 241

原创 滑动窗口算法-day7(越长越合法子数组)

遍历右指针,当满足条件的时候,再去收缩左指针,达到不满足条件;此时左指针 L 的值即为当前滑窗下的答案,继续遍历;

2025-03-10 21:25:36 620

原创 滑动窗口算法-day6(最短子数组)

第二题是经典的滑动窗口题目,注意细节即可;第一题和第三题有类似的地方,都是先用 cnt 记录元素总数,再用滑动窗口内元素去消 cnt 元素,使某变量削减到一定数量,再更新答案;注意点:1,3 题的 while 循环是在满足条件下更新答案的,而 2 题是利用 while 循环去达到满足条件,再用 if 判断是否可以更新答案的;第三题利用了反向思维,需要多思考;

2025-03-09 11:43:08 401

原创 滑动窗口算法-day5 (不定长)

和模板题都是同样的套路;

2025-03-08 14:01:09 394

原创 滑动窗口算法-day4

前两题都是移动窗口右边界然后进行计算的题目,注意第一题的各种函数就行了;第三题对计算要求比较高,很多不同的下标需要仔细计算;

2025-03-08 10:49:35 467

原创 滑动窗口算法-day3 (定长滑窗)

1.移动指针 i ,直到窗口长度变为 K,在过程中记录某些变量的值;2.根据题目条件,更新结果取值;3.移动窗口,即去除左边第一个数,并根据该值去更新某些变量;注意点:移动窗口过程中,下标的变化;

2025-03-07 17:20:00 1221

原创 滑动窗口算法-day2

遍历整个数组;左指针:根据题目条件不断右移,去除不符合的元素,使得 L-R 元素均满足题目条件;答案方案数一定是建立在包含右指针的情况下去计算;第六题的反向思维转换为滑动窗口非常巧妙,可以多思考几遍;

2025-03-06 21:30:29 824

原创 双指针算法-day7 (原地修改)

原地修改双指针步骤:首先确定左右指针位置和移动方向;其次,确定更新方式,一般有3种:1.左指针更新数组,右指针移动寻找满足条件的元素 ,将右指针指向的数直接赋值给左指针。(适用于可以舍弃不满足条件的元素);2.将左指针指向的数与右指针指向的数交换。(适用于将满足条件的数提前的题目);3.左右指针同频移动,共同寻找不符合条件的数组对,进行交换;复写0 这题比较有思想深度,用到了三指针,得多想多模拟;

2025-03-05 21:22:09 913

原创 双指针算法-day6

1.解析。

2025-03-04 17:21:16 756

原创 双指针算法-day5

【代码】双指针算法-day5。

2025-03-03 20:02:20 224

原创 双指针算法-day4

1.解析。

2025-03-03 18:27:20 377

原创 滑动窗口算法-day1 (模板题)

1.暴力解法:两重循环,时间复杂度为 O(n^2);

2025-03-02 21:21:20 558

原创 双指针算法-day3

1.暴力解析:四重循环,时间复杂度为 O(n^4);

2025-03-02 09:39:21 379

原创 双指针算法-day2

1.暴力解法:双重循环,时间复杂度为 O(n^2);1.暴力解法:三重循环,时间复杂度为 O(n^3);

2025-03-01 10:44:22 528

原创 双指针算法-day1(相向双指针)

1.暴力枚举:两重循环,时间复杂度为 O(n^2)

2025-02-28 20:26:13 463

原创 XDOJ练习题

【代码】XDOJ练习题。

2025-02-20 18:54:07 306

原创 AcWing-算法基础

【代码】AcWing-算法基础。

2025-02-20 13:06:34 900

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除