自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录,栈和队列

新建栈,思考的怎么消除两个元素,通过将一个元素放到栈,遍历过去后如果相同则出栈,不同则将元素入栈,若栈中无元素,也入栈。通过队列实现栈,可以新建两个队列q1q2,其中q2队列用来暂存数据,将q1队列的前n-1个元素放到q2,则q1的front即为栈顶,pop同上,push通过暂存,以及将q2不断清空得到出栈的顺序,top则直接调用q1.back()取队列的最后的值。有效的括号,题目是判断括号是否左右闭合,通过遍历左边元素,推出右边应为什么元素,再判断是否相符,类似栈的先入后出思想。遍历完成,栈还有元素;

2024-06-13 21:46:49 282

原创 代码随想录003

当=0,则将数组加入到三元组(a不同,整个向量也就不一样,因此不用先对bc进行去重,等加入结果后去重) 先将结果插入,然后去重,因为去重是对left、right做移动,如果此时为{0,0,0},由于数组做了排序,3元素相邻,进行去重后可能出现left=right的情况,不满足循环条件,立即跳出,不执行下述代码,因此应先将结果加入容器。取各位的值,通过取余10,取余后的余数更新n,随着循环的取余,n在不同时刻记录了不同的位的值,通过while循环,条件为n,因为取余到最后取不到便为0,此时循环结束。

2024-04-13 15:13:42 331

原创 代码随想录002

先将头节点变为尾节点,需要将head->next指向nullptr,初始化一个指针pre = nullptr,然后如果将cur->next指向pre,链表就断了,需要先将cur->next暂存,完成后,更新先更新pre,否则cur改变后pre在改变,pre就变成了当前的cur,而不是cur的前一个(原顺序)newNode->next = cur->next;感觉就是删除节点是cur->next = cur->next->next,删除cur的下一个,需要用cur,所以是需要删除节点的上一个节点。

2024-04-01 20:36:01 318 2

原创 代码随想录001

双指针法:感觉实际上还是双循环,先确定终止位置,然后通过while(sum>=target),遍历所有>=的子数组,随着起始点的增加,随之减小sublength=j-i+1,感觉其中这个sum=sum-nums[i++]有循环的感觉。当将下一个值赋给第i位,执行完成外循环会导致i+1,但是此时的i位是以前的i+1,因此还需要判断此时的i,因此为了抵消i+1,执行i--,言归正传,今天看了数组,这个c以前就学过,就是一个空间,数组名代表数组的首地址,在c++是连续的地址,但在java不是(输出地址无规律)

2024-03-26 21:22:13 400

空空如也

空空如也

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

TA关注的人

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