自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2024.7.20刷题记录

使用滚动数组优化空间。

2024-07-20 22:37:02 296

原创 2024.7.13刷题记录-牛客小白月赛98(未完)

偶数加奇数为奇数,奇数乘奇数为奇数,优先选择加法,取决于奇数的个数。分为奇数多和偶数多两种情况。奇数多,则选择完加法后剩余 2 * cnt - n 个奇数,两两配对(乘法)则取余;当偶数多时,使用加法消耗完所有奇数偶数对即可,剩余 n - 2 * cnt。而两者一正一负(或0),取最大值即可。python无精度影响。

2024-07-13 22:02:56 284

原创 2024.7.10刷题记录

【代码】2024.7.10刷题记录。

2024-07-11 00:31:07 382

原创 2024.7.7刷题记录

根据讲解视频写的代码。

2024-07-10 17:04:00 651

原创 2024.7.4刷题记录

观看教学视频写的代码。

2024-07-05 08:53:05 333

原创 2024.6.29刷题记录

return处只能使用right + 1,当最后位置left==right时,经过内层whle,right和left之间还有一个数;当数组全为val时,right=-1,left = 1,综上right+1处即为答案。我想到了用dfs,但是边界写错了。当时没读懂题,原来是只考虑前k个数。2.使用字典来存储状态之间的距离。注意其中斜线的表示方法。3.每一次更新状态后需要还原。1.使用字符串存储状态。

2024-06-30 00:23:20 444

原创 2024.6.28刷题记录

又重新写了一遍这道题。

2024-06-28 22:32:26 301

原创 2024.6.25力扣刷题记录-周赛403

博主在比赛时只过了前两题。剩下跟着灵神做,来自视频:【状态机 DP【力扣周赛 403】】 https://www.bilibili.com/video/BV1MZ421M74P/?

2024-06-25 22:20:39 513

原创 2024.6.22刷题记录-力扣周赛402跟练记录(未完)

【值域打家劫舍 树状数组【力扣周赛 402】-哔哩哔哩】 https://b23.tv/iDc49pt。

2024-06-24 00:24:36 305

原创 2024.6.23刷题记录

时复O(nlogn),空复O(1)。时复O(nlogn),通过。时复O(n),空复O(n)。时复O(n^2),超时了。

2024-06-24 00:23:43 393

原创 2024.6.19刷题记录

不会,线段树讲解来自题解(代码参考思路题解自写。节点数合并处参考题解(不会,思路来自题解(

2024-06-19 22:11:41 416

原创 2024.6.14刷题记录-KMP记录

通过在字符串前面加一空格,减少j==0这一判断条件。

2024-06-15 14:17:46 408

原创 2024.6.14KMP算法学习记录

主要是想起到一个记录的作用。

2024-06-14 20:27:46 165

原创 2024.6.13刷题记录

当时没有想到怎么保证队内全都是窗口内的元素,答案:“当队头元素在窗口的左边的时候,弹出队头”,虽然不能保证队内一直没有窗口外的元素,但是能保证使用到的队内元素(队头)全是窗口内元素。当时是有想到这个方法的,但是以为不行,一下没转过来弯。队列储存索引而不是元素,通过储存索引使我们能够快速判断元素是否出窗口。不会,思路来自题解(

2024-06-14 09:50:01 1300

原创 2024.6.12刷题记录

不会,思路来自题解(

2024-06-12 23:51:32 403

原创 2024.6.11刷题记录

【代码】2024.6.11刷题记录。

2024-06-11 23:07:26 393

原创 2024.6.10刷题记录

【代码】2024.6.10刷题记录。

2024-06-10 22:52:50 448

原创 2024.6.9刷题记录(6.10更新)

判断边界的时候只想着有carry的情况,而没有返回无carry的情况(None)导致运行超时,修改后运行通过。将添加操作分为“完整行”、“完整数”(最后一行中)、“不完整数”(最后一格)三个部分进行处理。时复O(m + n), 空复O(m + n)。python一般不会出现溢出的问题,所以实际上并没有受到限制,题主也就并没有答到考点。题解作者使用的是左闭右开区间,博主本人二分习惯使用闭区间,所以改为了闭区间写法。时复O(log(min(m,n))),空复O(1)。不会,均来自官方题解(

2024-06-09 23:01:09 850

原创 2024.6.7力扣刷题记录-链表篇学习记录

【反转链表】 https://www.bilibili.com/video/BV1sd4y1x7KN/?和(4)的解法道理是一样的,都是根据数值的范围确定只能进位一次。(4)是从上节点的角度,而(5)是从下节点的角度。当l1,l2遍历完但有进位时,会缺少节点,最好还是使用开新的储存空间的方法。又用到了栈,又用到了头插法,又新建节点,效率不是很高。先全部入栈,弹出一个运算一次头插一次。k个节点循环的做法,此时k=2。两个为一组直接进行反转连接。

2024-06-07 23:10:30 653

原创 2024.6.2力扣刷题记录

days范围太大了。

2024-06-03 11:56:13 392

原创 2024.5.30力扣刷题记录-每日一题+动态规划练习

想到了动态转移方程,没想到边界值。很妙,关于新旧数据的思维转换。之前学过,又遇到了,自己做一遍。不改变原数组,空复O(n)。不会,均来自灵神题解(不会,来自灵神题解(

2024-05-30 21:03:31 390

原创 2024.5.29刷题记录

本题题目中的乘数是低精度。注意:负数开根号会出错。

2024-05-30 07:14:55 333

原创 2024.5.25AcWing刷题记录-排序篇

【代码】2024.5.25AcWing刷题记录-排序篇。

2024-05-25 16:56:49 269

原创 2024.5.24AcWing刷题记录-785. 快速排序

知识点:快速排序+三路快速排序。三路快速排序+随机基准值。

2024-05-24 23:08:16 169

原创 2024.5.(23,25,2)力扣刷题记录

check函数是精髓,充分利用了该矩阵的性质,时复最小。通过将坐标一起入堆,更好追踪后节点。2024.5.(25,26号)续:《》2024.5.(25,26号)续。没有利用性质,时复最大。2024.5.25续:《》2024.5.25续。利用每一横排的有序性。

2024-05-23 23:09:25 283

原创 2024.5.22力扣刷题记录

【代码】2024.5.22力扣刷题记录。

2024-05-22 23:02:01 271

原创 2024.5.6力扣刷题记录-二叉树学习记录5(未完)

【二叉树的层序遍历【基础算法精讲 13】】 https://www.bilibili.com/video/BV1hG4y1277i/?

2024-05-22 13:03:36 411

原创 2024.5.(17,18)力扣刷题记录-数组篇记录

我们将第一行数字进行旋转,发现它们出现在第n - 1列,即可总结到:原数组的第i行元素旋转后会出现在n - 1 - i列。同理,我们将第一列数字进行旋转,发现它们出现在第1行,即可总结到:原数组的第j列元素旋转后会出现在第j行。这个方法即是:我们举特定的一(几)整行或者一(几)整列即可得到行号和列号的变化规律。主要是要理清,变化后的数组的横纵坐标是怎么由原数组得到的。这里必须要加tolist()(转来转去效率很低)或者改变定义函数时的输出,不然会因为类型不符合而报错。

2024-05-22 12:59:02 449

原创 2024.5.19力扣刷题记录

【代码】2024.5.19力扣刷题记录。

2024-05-22 10:43:48 205

原创 2024.5.21力扣刷题记录-二分算法篇

通过将范围缩小到[0, n - 2],简化结尾判断。通过使用前缀和,使数组变得有序。不会,来自灵神题解(

2024-05-22 10:33:06 449

原创 2024.5.(15,16号)力扣刷题记录-数组篇记录

博主将这个方法应用于第一题,发现运行超时了。对比后发现,第一题为矩阵而第二题为正方形。当经历一次while循环,相当于转了一圈。当为正方形时,总结束点总是为一圈的结束点;而当为矩形时,总结束点并不是一圈的结束点。当走到终点时,并没有继续走,但是边界会继续收缩,导致死循环。m + n - 1条对角线,参考官方题解(和上一道题类似,只是从取值变成了放值。去掉里面的判断,参考题解(将两过程合并,来自题解(

2024-05-17 15:28:38 291

原创 2024.5.3力扣刷题记录-数组篇记录7

cnt求法参考题解(

2024-05-03 23:47:58 315

原创 2024.5.2力扣刷题记录-数组篇记录6

思路来自官方题解方法2(维护最大三位和最小两位。

2024-05-03 09:39:58 322

原创 2024.5.1力扣刷题记录-数组篇记录5

2.排序,时复O(nlogn),虽然时复不满足要求。2.直接模拟(简洁版)。1.维护第一、第二、第三大值。

2024-05-02 13:41:55 345

原创 2024.4.29力扣刷题记录-数组篇记录4

本质是要抓住“对于一个长度为 N 的数组,其中没有出现的最小正整数只能在 [1, N+1] 中。”,再将数字范围进行限制,转化为之前做过的题型。时复为O(n),无额外空间。题目中的元素范围信息(属于[ 1, n ])也很重要。2.原地操作2,使用正负号标记。这里使用tmp的原因来自评论(3.原地运算,来自官方题解(3.原地交换,来自官方题解。2.一次遍历,来自官方题解(1.原地操作,类比上一题。不会,来自官方题解(

2024-04-29 22:57:34 387

原创 2024.4.28力扣刷题记录-数组篇记录3

同样来自上面评论连接。没有想到用集合找出重复元素。不会,想到了找规律,但是没有总结出来。1.哈希表 + 数学。

2024-04-28 23:16:42 291

原创 2024.4.(22,23,28号)力扣刷题记录-二叉树学习记录4

【二叉树的最近公共祖先】 https://www.bilibili.com/video/BV1W44y1Z7AR/?(2)先序遍历,来自视频代码。(2)先序优化,来自视频代码。不会,学习一下,来自灵神题解(还有另一种写法,来自评论(

2024-04-28 21:24:14 375 1

原创 2024.4.8Morris中序遍历(线索二叉树)学习

既然递归中使用栈的原因是想记录前驱节点,那么我们只要达到记录前驱节点的目的即可不使用栈。首先,它的本质还是中序遍历。正常的中序遍历,在“递”左子树时是可以直接通过左指针到达,但是在“归”根节点的时候是没有办法直接到达的(右子树只用“递”,不用“归”)。而“归”的时候均是到达叶子节点才“归”,则可以充分利用叶子节点的左右空指针,将右空指针指向根节点,这样就可以直接“归”到根节点。其中,为什么是右空节点呢?

2024-04-09 00:27:40 826

原创 2024.4.7力扣刷题记录-数组篇刷题记录2

心路历程简直和他说得一模一样,后面对原代码进行修改的时候,没有想到可以模拟修改的过程。多对前修改少对后修改,防止后面更麻烦。1.遍历,指针(环状替换)。时复O(n), 空复O(1)。时复O(n), 空复O(1)。3.纯粹的python切片语法。遍历, 模拟进行修改。2.一次遍历,参考快排。1.双指针, 模拟(两次遍历)注意python中翻转的方法。),自己加了一些注释。

2024-04-08 06:52:02 329

原创 2024.4.5力扣刷题记录-数组类刷题记录1

在遍历过程中动态寻找最小值,参考官方题解评论(直接相乘,但是会有溢出风险。不会,来自官方题解(

2024-04-05 22:45:14 340

空空如也

空空如也

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

TA关注的人

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