自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【hot100篇-python刷题记录】【合并区间】

这个时候右端点最大值需要通过max来更新。

2024-08-23 09:16:16 99

原创 【hot100篇-python刷题记录】【滑动窗口最大值】

怎么将内层的查找最大值,O(k)压缩至O(1)完了,我好像想到python的max。只能尽可能少的-地在内层循环中搜索值。真的太强了,get到单调栈!还想用sort蒙混过关哈哈哈。

2024-08-23 09:07:39 429

原创 【hot100篇-python刷题记录】【找到字符串中所有字母异位词】

接着开始滑动窗口,每次从右边增加一个字符。因此初始滑动窗口大小为len(p)-1,当从右边增加一个元素,判断counter1是否等于counter2。如果counter2中left对应的字符数量为0,需要删除,避免影响下一次的判断。left和right指针都向右移动。先统计一遍p的counter1。相等:append(left)

2024-08-23 08:34:22 154

原创 【hot100篇-python刷题记录】【盛最多水的容器】

双指针法,num1在0处,num2在n-1处,相对移动收缩。每次单步移动短板,因为长板收缩面积肯定变小。

2024-08-23 08:12:33 134

原创 【hot100篇-python刷题记录】【字母异位词分组】

哈希表记录:key=同一个单词 value=各种形态(使用数组append)---最后list输出即可。判断是否同一个:sort即可。

2024-08-22 07:30:18 133

原创 【hot100篇-python刷题记录】【只出现一次的数字】

使用哈希记录次数即可。

2024-08-22 07:22:30 184

原创 【hot100篇-python刷题记录】【不同路径】

第二种:换个角度想想,不考虑外围那一圈,考虑了也是一种方法。多维动态规划的核心在于建立多维状态记录表。注意,需要判断是否存在,因为二维数组有边界。本题中,建立dp二维数组表(初始化为1)第一种处理需要判断边界。R5-多维动态规划篇。

2024-08-22 07:17:09 310

原创 【hot100篇-python刷题记录】【爬楼梯】

走到第i步阶梯的总方法数=sum(走到第i-1步阶梯的总方法数,走到第i-2步阶梯的总方法数)第i步是怎么来的(即动态规划公式)R5-真正的动态规划。

2024-08-22 06:55:38 127

原创 【hot100篇-python刷题记录】【买卖股票的最佳时机】

贪心的常规思路是找到贪心切入点,例如最经典的算法是安排最多活动问题,需要以结束时间排序,然后遍历不冲突,计算最大数即可(每次都选择最早结束的活动)。前i天利润=max(选择第i天卖出-前i天的最低买入成本,选择前i天中的最高利润值)利用哈希表记录每天买入能产生的最大利润值,该值通过两层循环遍历查找得到。贪心算法的使用需要满足贪心特征。即局部最优解等于全局最优解。动态规划点:从前i天价格最低的买入,卖出做单步的动态规划。动态规划公式:(当前规划需要与前面的规划产生联系)下,理论上还有70+篇任务本月。

2024-08-22 06:41:45 169

原创 【hot100篇-python刷题记录】【数组中的第K个最大元素】

堆排序(英语:Heapsort)是指利用堆(heap)这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于(或者大于)它的父节点。

2024-08-20 07:00:15 152

原创 【hot100篇-python刷题记录】【有效的括号】

【代码】【hot100篇-python刷题记录】【有效的括号】

2024-08-20 06:48:35 203

原创 【hot100篇-python刷题记录】【搜索插入位置】

【代码】【hot100篇-python刷题记录】【搜索插入位置】

2024-08-20 06:39:41 191

原创 【hot100篇-python刷题记录】【全排列】

【代码】【hot100篇-python刷题记录】【全排列】

2024-08-20 06:31:01 184

原创 【hot100篇-python刷题记录】【岛屿数量】

遍历整个二维数组,遇到1就横竖扩展把1变为0,同时计数。

2024-08-20 06:15:27 399

原创 【hot100篇-python刷题记录】【二叉树的中序遍历】

顺序:递归调用左子树,打印当前结点,递归调用右子树。ps:昨天被refused了,sad。

2024-08-20 05:49:45 218

原创 【hot100篇-python刷题记录】【相交链表】

【代码】【hot100篇-python刷题记录】【相交链表】

2024-08-19 06:33:29 163

原创 【hot100篇-python刷题记录】【矩阵置零】

使用thex和they将该元素的i和y存储起来,再分别遍历thex,将所有y的位置置0。遍历they,将所有x 置0。无非就是行和列都置0。

2024-08-19 06:23:53 197

原创 【hot100篇-python刷题记录】【最大子数组和】

4.cross函数中,计算跨过mid元素的数组的最大值,就可以从mid元素像左右两边扩展,由于可能出现一边倒的情况(左边/右边为0),则左右两边分别计算最大值,最后s1+mid+s2即可。2.将从left到right的计算简化为为left-mid,mid+1-right 以及left-mid-right 3者的最大值(因为有负数)3.上面左右两边的计算可以递归调用本身函数,left-mid-right的计算另起函数。当数组只有一个元素,这一条件需要放在递归计算那个函数,因为这是递归边界。

2024-08-19 06:13:05 328

原创 【hot100篇-python刷题记录】【和为 K 的子数组】

R5-子串篇滑动,应该可以使用滑动窗口来解题。貌似前缀和也可以,left,right两个指针,right的前缀和-left的前缀和表示的就是从left到right数组的和。这题之前做过,有点印象,先入为主。要利用前缀和计算某个连续数组的值。先使用哈希表记录每个前缀和出现的次数。当计算到某个前缀和为s的时候,我们判断s-k这个前缀和是否存在。如果这个前缀和是存在的,那么说明从s-k的位置到s的位置这一段连续的数组是符合题意的。

2024-08-19 05:43:54 329

原创 【hot100篇-python刷题记录】【无重复字符的最长子串】

遍历左指针,对于右指针也是遍历(分两种情况,情况1:没存在过,直接right+1;情况2:存在过,必须跳出去)原理好像是,两个相同的字母之间的就是最大非重复子串。你要检验是否出现过一个字母,用哈希表能做到O(1)这还是个不定长的滑动窗口。

2024-08-18 07:28:58 597

原创 【hot100篇-python刷题记录】【移动零】

要用双指针来实现,想到一个办法,左右两边双指针,当左边指针找到0就和右指针交换值,要减少操作次数的话,就顺便判断一下右指针是否为0即可,最后肯定是双指针碰撞的。那就让两个指针相邻从数组头出发,遇到0就交换值,right的值应该不为0才对。不对,不能交换值,因为不能移动非零元素的相对位置。

2024-08-18 06:42:35 198

原创 【hot100篇-python刷题记录】【两数之和】

之所以不会出现上面的案例不通过的情况是,他没有初始化哈希表,所以避免了两个相同值记录下标的问题,由于题目给出对于每个输入只能有一个答案,所以不会出现3个相同的值。在第一次遍历记录的时候,如果数组存在相等的两个数,就只会记录最后一个数的下标,这显然不是我们想要的。由于哈希表查找为O(1)复杂度,简化两层循环在于找到i和j之间的关联,关联点在于target是和。我得专注于思考一些优化的方法以及优化的原理了,而不是仅仅在于解决问题。所以我们可以遍历一层哈希表,key是值,value是下标。这个版本没有优化成功。

2024-08-18 06:20:00 584

原创 【添加与搜索单词 - 数据结构设计】python刷题记录

【代码】【添加与搜索单词 - 数据结构设计】python刷题记录。

2024-08-15 16:16:27 108

原创 【和可被 K 整除的子数组】python刷题记录

python取模向下取整。

2024-08-15 16:02:15 217

原创 【最长回文子串】python刷题记录

R4-双指针专题起初我还想着用那个栈来做的,但是栈不好处理中心点。

2024-08-14 06:13:33 195

原创 【搜索二维矩阵】python刷题记录

直接二维变一维,然后二分查找就可以了。

2024-08-13 16:02:19 257

原创 【长度最小的子数组】python刷题记录

【代码】【长度最小的子数组】python刷题记录。

2024-08-12 18:04:28 266

原创 【路径总和 II】python刷题记录

【代码】【路径总和 II】python刷题记录。

2024-08-11 19:08:03 221

原创 【最后一块石头的重量 II】python刷题记录

n个数,每个数都可以+或者-

2024-08-11 18:51:58 299

原创 【找树左下角的值】python刷题记录

【代码】【找树左下角的值】python刷题记录。

2024-08-11 04:01:17 120

原创 【正则表达式匹配】python刷题记录

渗透不了一点,深夜破防。算法不了一点,深夜破防。k神思路(没看懂)。

2024-08-11 03:32:22 318

原创 【最多可以参加的会议数目】python刷题记录

R4-贪心篇。

2024-08-09 15:23:14 362

原创 【前 K 个高频元素】python刷题记录

【代码】【前 K 个高频元素】python刷题记录。

2024-08-09 15:03:24 199

原创 【合并 K 个升序链表】python刷题记录

R4-分治篇如果只是数组就很好处理了。

2024-08-08 23:12:30 292

原创 【最长递增子序列】python刷题记录

R4-dp。

2024-08-08 22:37:55 422

原创 【汉明距离总和】python刷题记录

counter的用法。

2024-08-08 21:52:06 230

原创 【环绕字符串中唯一的子字符串】python刷题记录

ord()计算ASCII值。

2024-08-08 03:10:13 214

原创 【接雨水】python刷题记录

R4-栈与队列篇和之前的一道题有些类似。

2024-08-08 02:44:52 683

原创 【砖墙】python刷题记录

max不用初始化,直接一句话解决。这题不就是射箭那道题?哈希表+前缀和秒杀!

2024-08-06 15:08:16 946 1

原创 【找出所有稳定的二进制数组 I】python刷题记录

R4-每日一题.今日甚是清醒.

2024-08-06 14:50:04 304

空空如也

空空如也

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

TA关注的人

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