自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 lc49. 字母异位词分组

【代码】lc49. 字母异位词分组。

2024-01-22 16:28:45 369

原创 lc242.有效的字母异位词

【代码】lc242.有效的字母异位词。

2024-01-22 15:35:38 369

原创 lc142.环形链表Ⅱ

双指针采用快慢指针,快指针每次走一步,慢指针每次走两步,最后两个指针如果相遇一定是在环里面,如果没有相遇就说明没有环,因此实现了判环。,通过模拟的方法找到关系式,然后实现。

2024-01-22 13:37:54 472

原创 lc19.删除链表的倒数第 N 个结点

【代码】lc19.删除链表的倒数第 N 个结点。

2024-01-21 12:35:47 333

原创 lc24.两两交换链表中的节点

每次循环只对三个点进行操作,即需要交换的两点以及需要交换的两点前面的一点(方便进行操作)。

2024-01-21 11:25:24 339

原创 lc206.反转链表

设置cur指针用来遍历链表,设置pre指针用来设置遍历链表时,每个结点的新前驱。

2024-01-20 11:26:31 314

原创 lc707.设计链表

涉及到链表的增删查,头插法尾插法和指定位置插入,删除指定位置,和得到指定位置的值。

2024-01-17 19:54:31 387

原创 lc203.移除链表元素

对于链表中的元素,链头结点的删除和中间结点的删除方式是不一样的,所以要区分。

2024-01-17 12:24:31 393

原创 LCR.146螺旋遍历二维数组

与螺旋遍历方阵不同,所以不能使用方针的模拟方法。

2024-01-14 16:57:16 369

原创 lc59.螺旋矩阵

对每一条边都是执行左闭右开的for循环,这样四条边就共用同一规则。

2024-01-14 12:20:14 462

原创 lc904.水果成篮(滑动窗口)

【代码】lc904.水果成篮(滑动窗口)

2024-01-13 21:08:47 346

原创 lc209.长度最小的子数组(滑动窗口)

窗口的起始位置如何移动:如果当前窗口的值大于s了,窗口就要向前移动了(也就是该缩小了)。窗口的结束位置如何移动:窗口的结束位置就是遍历数组的指针,也就是for循环里的索引。滑动窗口:所谓滑动窗口,

2024-01-13 11:57:46 331

原创 lc977.有序数组的平方

对于非递减排序的数组,可能出现负数,平方后未必是非递减序列,可能是一个两端大中间小的序列。所以需要将两端的值比较大小后,将较大的插入一个数组的末尾,因为最大值必然出现在两端,因此要先确定最大值。

2024-01-12 20:23:49 352

原创 lc844.比较含退格的字符串

相较于移除字符,这里并不是遍历到等于目标值的时删除当前值,而是遍历到目标值时删除前一个值,因此在双指针移动时,移动到目标值时并不能只移动快指针,因为快指针要覆盖的是上一个值,所以慢指针要回退。

2024-01-12 15:12:28 310

原创 lc283.移动零

我的思路:数组题优先考虑双指针,题目要求将数组中的0全部移动到最后,可以认为先删除数组中所有的元素,当快指针遍历到数组最后,慢指针前的元素都是非零。此时将慢指针后的元素全部赋值为0即可。右指针不断向右移动,每次右指针指向非零数,则将左右指针对应的数交换,同时左指针右移。因此每次交换,都是将左指针的零与右指针的非零数交换,且非零数的相对顺序并未改变。使用双指针,左指针指向当前已经处理好的序列的尾部,右指针指向待处理序列的头部。右指针左边直到左指针处均为零。左指针左边均为非零数;

2024-01-11 20:16:16 465

原创 lc26.删除有序数组中的重复项

相同,但是移除的条件不同,因此只需要更改if判断语句的条件即可。

2024-01-11 19:46:37 354

原创 lc27.移除元素

【代码】lc27.移除元素。

2024-01-11 18:13:24 354

原创 lc34. 在排序数组中查找元素的第一个和最后一个位置

主要考察当二分查找时出现重复元素的情况,需要用左边界函数和右边界函数分别寻找。

2024-01-09 20:11:45 307 1

原创 日期问题常用函数和数组

【代码】日期问题常用函数和数组。

2023-10-03 22:41:03 38

原创 力扣35.搜索插入位置

1.target在数组内,但不是数组元素(return r + 1)2.target比所有元素都小(return r + 1)3.target比所有元素都大(return r + 1)4.target已找到(return mid)

2023-05-04 14:02:50 41

原创 力扣704.二分查找

【代码】力扣704.二分查找。

2023-05-04 13:29:58 42

原创 AcWing1209.带分数

思路:通过DFS全排列9位数,将9位数分为3块,通过i,j双指针实现,第一块为a,第二块为b,第三块为c,如果target = a+b/c,则计数器+1。

2023-04-06 16:32:26 59

原创 AcWing3502.不同路径树

两层循环,将图中每个点都作为起始点,进行DFS,在DFS过程中记录下层数和形成的数的值,DFS进行k次后,将形成的数值插入哈希表,最后输出哈希表的大小即可。(注意:因为题目说明走过的点可以再走,所以不需要记录状态。另外,因为unordered-set对于相同的值只能存一次,所以无需担心记录重复的路)

2023-04-05 23:45:37 30

原创 AcWing843.n-皇后问题

【代码】AcWing843.n-皇后问题。

2023-04-05 22:02:35 55

原创 AcWing.842排列数字(全排列问题)

思路:通过DFS实现。DFS本质通过递归,首先填写第一个位置,填完之后递归填写第二个,直到填写不下,即代码中(此时回溯,寻找倒数第二个位置还有没有别的数可以填写,不停回溯,从倒数第一位回溯到第一位,直到所有情况全部排列。

2023-04-05 17:09:52 53

原创 AcWing1233.全球变暖

通过遍历一片连通块,如果该连通块中块的总数等于连通块中会被沉没的块的总数,则该连通块会被沉没。解题思路:BFS(也可以使用DFS)解题思路:BFS(也可以使用DFS)

2023-04-05 16:32:17 25

原创 AcWing845.八数码

利用队列q来实现BFS,利用哈希表d来存储字符串与距离的映射关系。

2023-04-04 16:49:06 31

原创 AcWing844.走迷宫(BFS)

【代码】AcWing844.走迷宫(BFS)

2023-04-01 18:28:19 62

原创 进制转换(秦九韶算法)

【代码】进制转换(秦九韶算法)

2023-04-01 00:23:30 201

原创 AcWing2058.笨拙的手指

3.通过哈希表,将十进制数存入哈希表来判断,是否已经出现过该数字。2.将b进制数转换成十进制(秦九韶算法)1.列举出2进制和3进制下,改变一位数后的所有可能。1.列举出2进制和3进制下,改变一位数后的所有可能。

2023-04-01 00:14:46 36

原创 AcWing841.字符串哈希

哈希

2023-03-29 13:00:37 37

转载 AcWing840.模拟散列表

哈希表

2023-03-26 23:16:54 38

转载 哈希表(unordered_map)

哈希表

2023-03-26 23:09:40 69 2

原创 AcWing1249.亲戚(并查集)

并查集

2023-03-18 17:17:46 46

原创 并查集模板

并查集模板

2023-03-18 17:13:13 36 1

原创 AcWing1497.树的遍历(递归,树的建立)

根据两个遍历建立二叉树

2023-03-18 16:14:59 60 2

原创 AcWing785.快速排序

快速排序

2023-03-07 14:31:15 42 1

原创 AcWing785.快速排序

快速排序

2023-03-07 14:26:55 45 2

空空如也

空空如也

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

TA关注的人

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