自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录|字符串part02

将问题分解,首先需要将字符串的单词顺序颠倒,将其转化为输入字符串全部反转,再逐个对单词进行反转,其次,需要判断并删除单词之间的多余空格。

2024-10-01 20:30:59 148

原创 代码随想录|字符串part01

本题首先注意到每2k个数进行反转,故在循环中利用i+=2k来遍历,其次,需要判断i+k是否小于s.size(),若小于,则将i到i+k的字符串反转,利用reverse函数,从i到i+k可以写成s.begin()+i,s.begin()+i+k。若大于,说明从i到s.size()不足k个,将其全部反转。reverse函数的头文件时#include<algorithm>定义另外一个string进行判断。

2024-10-01 20:23:09 169

原创 代码随想录|第三章 哈希表part02

记录nums1+nums2中数字出现的次数,再通过map.find(0-nums3-nums4)判断是否存在。与两数相加类似,需要得到元组的个数,使用map构造哈希表,将4个数组两两划分开,降低时间复杂度。计数count加上数字出现的次数。

2024-09-25 10:41:23 155

原创 代码随想录|哈希表part01

本题中,由于需要考虑取得较小的次数,故需要使用map对出现的次数进行计数,首先将较长数组中键存入哈希表,并对出现次数全部记录,再对较短数组进行遍历,如果键存在哈希表中,对键的值做减一处理,并将该键存入res中,然后对键的值进行判断,如果键的值已经归为0,将该键从哈希表中移出,再次遍历遇到时不再加入res。遍历set容器时,利用set.end()判断循环是否结束,当使用find()进行查找时,若未查找到,find()会返回set.end()multiset 树,有序,可存放多个相同的数字,不去重。

2024-09-22 21:26:18 400

原创 代码随想录|链表part02

当链表长度不相等时,a.size>b.size时,a必然有前a.size-b.size个节点与b不相交,故先记录两个链表的长度,对链表长度进行比较,让较长的链表先走a.size-b.size个节点,再让两个链表同时走,判断是否相等。所以当fast和slow相遇时,设置两个指针,分别从头结点和相遇节点开始移动,当两个指针相遇时,说明到达了环的起始位置。慢指针=x+y //由于快指针的速度为慢指针的两倍,必然在慢指针进入的第一圈相遇。由于2*慢指针=快指针,即2*(x+y)=x+n*(y+z)

2024-09-21 10:50:37 352

原创 代码随想录|第二章 链表part01

由于头结点head应该从newhead->next开始,故令head=newhead->next,并返回head;遍历cur,当cur->next->val=val时,cur->next=cur->next->next;返回反转函数(tmp,cur)//即cur=tmp进行下一次遍历,pre=cur向后移动。并重新定义一个链表节点temp,令temp=cur->next,并释放temp;设置一个虚拟头结点newhead,使得newhead->next=head;若不等于,则cur=cur->next;

2024-09-20 17:25:09 409

原创 代码随想录|209.长度最小的子数组、59.螺旋矩阵2

904.水果成篮 滑动窗口类为两种水果,末尾指针遍历数组,每碰到一个新的水果,将第二种水果设置为末尾指针指向的水果,第一种水果设置为原来的第二种水果,即新水果之前的一种水果,从后往前去查找原来第二种水果的起始位置,将开始指针设置为该位置。在该题中,滑动窗口中数字之和需要等于或者大于target,由末尾指针对数组进行遍历,当滑动窗口中数字之和满足条件时移动开始指针,并判断当前的最小距离。1、使用双指针,一个为开始指针,一个为末尾指针。3、末尾指针用来遍历数组。2、确定窗口内的元素。4、开始指针如何移动。

2024-09-18 21:54:20 196

原创 代码随想录DAY1|704.二分查找、27.移出元素

数组 int* num ,数组大小 numsize,查找目标 target,数组大小为numsize=num.size()left=0,right=numsize//仍然需要考虑数组的最后一个元素。通过一个快指针和一个慢指针在一个for循环下完成两个for循环的工作。此时,存在a<=b,且target可以等于b,需要考虑每次指针变换的条件。1、左闭右闭[a,b]2、左闭右开[a,b)

2024-09-12 21:07:17 173

空空如也

空空如也

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

TA关注的人

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