- 博客(45)
- 收藏
- 关注
原创 4.8刷题记录(双指针)
先通过fast找到m位置,slow找到0位置。然后二者同时走n-m个位置,判断条件为fast走向了n即末尾的位置。这时候slow指向的就是n-m即倒数m的位置。分析:此题无非就是找到哪个点,然后将其删除即可。所以最大的难度在于如何找到那个点。接下来提供两种思路,第一种两次遍历,找到要删除的前一个。由于里面包含的题目大部分之前刷过,并且用双指针做过。所以今天仅仅复习,不再进行代码的搬运。今天刷的部分是代码随想录中的双指针专题。
2025-04-08 19:06:04
76
原创 4.7刷题记录(字符串专题)
reverse的使用是begin(),end()特别巧妙的一道题,通过拼接发确定是否是循环字符串。reverse是左闭右开区间。
2025-04-07 15:43:08
171
原创 4.4刷题记录(哈希表)
第一种方法比较巧妙(借助快慢指针),第二种比较普遍(利用hash_set)。另一种方法:双指针法(此代码及其考虑去重问题,而且运用到了双指针。先排序然后将排序过后的放在一个vector,简单高效,值得学习。其中unorder_map判断是否相等的逻辑通过以下来实现。
2025-04-06 23:04:51
273
原创 4.2刷题记录(动态规划)
两种方法:第一种比较复杂,但是容易理解。如果有位置被堵住,那么就从另一边走。第二种方法直接借助0进行相加,从而跳过if直接判断。以上这种方法用到的是二叉树深度搜索遍历,但是复杂度太高,仅用作开拓视野。这种方法用的是滚动数组,每次都从对角线方向进行加1。
2025-04-03 08:42:44
222
原创 3.28刷题记录
其中pre表示的是不包括当前值的前缀和,所以在计算闭区间的时候得是pre[b+1]-pre[a]一共分为三步,第一步初始化,第二步进行遍历,第三步进行结果的输出。
2025-04-01 08:49:28
198
原创 3.24刷题记录(移除元素专题)
这个核心思路就是即使被删除,那么left还是来源于right,就不用移动删除了。left=1用来存储第一个元素。
2025-03-24 22:42:00
169
原创 3.22记录(二分法专题)
第一种:左闭右闭:区间在[left, right]第二种,左闭右开:区间在[left, right)改进:添加一个ans变量存储每次的ans。第三种变式:查找左边界和右边界。
2025-03-24 10:33:16
279
原创 3.14学习记录
第二种方法我愿意理解为贪心法,如果出现一次比我买入的时候票价高,那么我将立刻卖出。此时为了防止我后悔,我将买入价设置为卖出价+fee,这样即使后面有价格比我更高的,那我卖的也不亏。如果后面没有价格比我更高的,那么就进行更换,肯定能赚取到更大的利润。第一种方法使用动态规划,其中dp[0]表示不持有股票的情况下所拥有的最大值,来源为昨天不持有||昨天持有,今天卖掉两部分。而dp[1]表示今天持有股份的情况下所拥有的最大值,来源为昨天就持有||昨天没有持有,今天买入。接下来是回溯法的两道题目。
2025-03-18 22:47:07
157
原创 3.17记录
2.循环判断条件有巧妙,首先判断这一次感染的时候是否有新的橘子进行被感染,其次判断这次感染的是否是新鲜的橘子。1.记录了fresh_count作为新鲜的橘子,最后通过直接比较是否大于零来比较是否有解。3.python内层方向的循环:一个很新的思路,就像函数的增量一样。专题:图的广度优先遍历。
2025-03-18 22:46:58
113
原创 3.11记录
这种方法维护了两个数组,分别是left和right,其中left表示当前数字左边的比当前数字小的,right表示当前数字右边的比当前数字大的,然后再比较left<nums<right,如果满足这个条件,说明存在递增子序列,如果不满足,则证明不存在,返回False。首先解决的是最大值,如果达到a<b<c那么就直接true,其次是次大,如果比最大值小比最小值大,那么就是次大,最后如果比最小值还小,说明成就递增三元子序列的可能更大一点。首先比较字符出现是否一样,然后比较字符出现的次数是否一样。
2025-03-12 22:18:48
248
原创 2.1刷题日记
我之前加了一个min(dp【0】和后面两项)这样做不对,因为我初始化的时候每一个是1000,是每一步花费的最大值,当我累加到一个很高的层次时,他会选择最初的1000,造成错误。先利用转置矩阵的思路,将grid进行翻转。然后再利用hash_map进行存储vector<int>进行快速比较。其中奇数就等于它上一个偶数+1,偶数就等于偶数/2对应数字中的1的数字量。利用奇数与偶数来进行区分。
2025-02-01 22:37:19
399
原创 1.26刷题日记
【C++】unordered_set 容器的最全解析(什么是unordered_set?unordered_set的常用接口有那些?)_unordered set-优快云博客。学习:unordered_set的运用。以下是具体学习过程,参照以下链接。
2025-01-27 08:55:14
706
原创 2025年1月21日刷题记录
未初始化大小时会导致未定义行为。应该使用word3+=word1[i].1.leetcode1768题目。3.力扣1431题目。
2025-01-21 22:34:24
378
原创 西瓜书第三章
一、机器学习三要素:一、机器学习三要素:1. 模型:根据具体问题,确定假设空间2. 策略:根据评价标准,确定选取最优模型的策略(通常会产出一个“损失函数3. 算法:求解损失函数,确定最优模型。
2024-01-20 23:37:12
444
原创 华北电力大学大二上物理实验(一)用示波器观测铁磁材料的磁化曲线和磁滞回线
大二上物理实验(一)用示波器观测铁磁材料的磁化曲线和磁滞回线(98分)
2023-11-14 14:50:50
3014
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人