自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 DAY13 栈与队列03 leetcode 239.347.

新知识点:大顶堆、小顶堆,使用priority_queue建立,自己写比较函数,在比较函数中使用了重载运算符。然后后面要仔细学一下迭代器的各种细节。细节还是需要再理解一下;239.滑动窗口最大值;347.前k个高频元素;

2023-09-07 08:45:22 932

原创 DAY11 栈与队列 leetcode.20.1047.150

利用“配对”思想,从一开始向后遍历字符串检测到输入左括号的时候,直接push右括号。carl的解法,有一种解法是将字符串作为栈直接操作。细节:①剪枝,奇数长度直接返回false;②分析各种可能出现的情况。遍历tokens,检测到运算符号的时候,栈弹出两个数字来做运算。消消乐,遍历压入元素,判断后压入的是否一致,决定是否弹出;检测到右括号的时候,要一并判断一下当前栈是否是空的。由于栈结构的特殊性,非常适合做对称匹配类的题目。没有检测到运算符号的时候,就日常将数字压入栈。150.逆波兰表达式求值。

2023-09-06 07:27:27 906 1

原创 DAY8 字符串344.541.151.剑指05.剑指58

/ 思路:先反转前n个字母,再反转剩下的s.size-n个字母;每2k个字符串位置反转k个字符,变量i在自增的时候使用i += (2*k);基础操作,使用swap交换元素,本质就是加一个中间变量的替换。//思路,首先扩充数组,其次从后往前填数组;// 最终反转所有字母;//如何将s数组扩充count位置?//双指针自后向前填充数组;

2023-09-04 16:16:20 1101 1

原创 DAY7 哈希表02.leetcode-454.383.15.18

细节:①首先数组要排序,②left、right定义在循环中,每一次有了新i的取值之后重新更新left、right,③三数之和>target时,right从末尾向前移动,④三数之和<target时,left从i+1向后移动,⑤三数之和=target时,结果向量pushback。细节剪枝:①排序后的nums,当nums[i]>0时,后面的left、right整体相加已经不能得到target=0,故结束循环,return ans向量;②nums[i] == nums[i-1]时,去重,continue;

2023-09-04 10:38:51 1065 1

原创 DAY6 哈希表 leetcode 242.349.202.1

理解题意,这个要求只有小写字母,故创建26元素的数组保存。遍历s字符串时对record数组内部元素做增加数,遍历t字符串时则减数。学习了unordered_set以及unordered_map的用法,首先就是set和map的用法,set存储一个值,而map存储键以及对应的键值。创建unordered_set result存放结果,另一个unordered_set nums_set复制nums1。使用unordered_map进行键值的索引操作。判断num元素 是否存在于nums_set中。

2023-08-28 21:47:49 1445 1

原创 DAY2:双指针,滑动窗口,螺旋数组

904水果成篮,有一个难点是判断元素是否在数组内,如果可以掌握哈希表则可以更加省事。这里借鉴了网上的题解,使用一个全零数组cnt覆盖所有可能出现的值,采用该数组中某一位的数字变化记录元素是否出现。这个题目拿到手完全没有自己的思路,看过卡尔的视频才知道如何解决。该题目还是要重点分析逻辑,保证循环不变量,也就是for循环的区间条件要保持一致。总结一下这个题目,双指针滑动窗口有一个要点就是明确慢指针++的条件是什么,重点还是要分析得到双指针从两边向中间过度的思路。补充题目:904水果成篮,76最小覆盖子串;

2023-08-25 11:16:52 1602 1

原创 DAY1.数组的二分查找

34:要求使用O(logN)的时间复杂度来实现计算目标,应该还是没达到,自己手写了两个循环。其一,先使用普通的二分法查找,找到mid。做题的过程中,想到了重新建立了一个新数组,将nums的值赋值在新数组里面,但是初始化vector的时侯未知长度。感觉这一类的题目,还是要先在逻辑上判断清楚,最后在落实到代码上。需要考虑到含有正负值的有序数组,需要从数组的两边分别定义指针,向中间过度寻找。本质就是一个使用快慢指针整理数组的题目,与27不同的是,这个题目在整理结束后,还要对后面的部分赋值。这一点还需要在联系。

2023-08-23 23:13:39 1826 1

空空如也

空空如也

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

TA关注的人

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