2025/3/2 【栈与队列】LeetCode232. 用栈实现队列
摘要:232. 用栈实现队列 - 力扣(LeetCode) 代码随想录 (programmercarl.com) 思想:用下面的两个栈模拟队列 from collections import deque class MyQueue: def __init__(self): # in主要负责push,out
阅读全文
posted @
2025-03-02 14:39
axuu
阅读(8)
推荐(0)
2025/3/1 【双指针】LeetCode18.四数之和 【√】
摘要:终于走完双指针这一节了 方法一:双指针 具体为两个for循环(对应第一和第二个数)加left和right指针(找第三和第四个数) class Solution: def fourSum(self, nums: List[int], target: int) -> List[List[int]]: r
阅读全文
posted @
2025-03-01 17:22
axuu
阅读(7)
推荐(0)
2025/2/28 【双指针】LeetCode15. 三数之和
摘要:15. 三数之和 - 力扣(LeetCode) 代码随想录 1.双指针 我认为实际上应该是三指针。具体来说,以一个i遍历列表,作为第一个数,另外两个左右指针确定第二和第三个数字,逐渐朝中间方向移动,找到所有满足条件的三个数。 from collections import defaultdict c
阅读全文
posted @
2025-02-28 21:53
axuu
阅读(18)
推荐(0)
2025/2/27 【双指针】LeetCode 142.环形链表II
摘要:142. 环形链表 II - 力扣(LeetCode) 代码随想录 1.快慢指针法(来自代码随想录) 需要找规律,和数学式子的简单推理 # Definition for singly-linked list. # class ListNode: # def __init__(self, x): #
阅读全文
posted @
2025-02-28 12:54
axuu
阅读(5)
推荐(0)
2025/2/26 【双指针】LeetCode 面试题 02.07. 链表相交 【√】
摘要:面试题 02.07. 链表相交 - 力扣(LeetCode) 代码随想录 1. 解法1 # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next
阅读全文
posted @
2025-02-26 18:02
axuu
阅读(11)
推荐(0)
2025/2/25 【双指针】LeetCode19. 删除链表的倒数第N个结点
摘要:19. 删除链表的倒数第 N 个结点 - 力扣(LeetCode) 代码随想录 1.非双指针方法 # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self
阅读全文
posted @
2025-02-25 15:31
axuu
阅读(6)
推荐(0)
2025/2/24 【双指针法】LeetCode206. 反转链表
摘要:206. 反转链表 - 力扣(LeetCode) 代码随想录 1.双指针法 # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val
阅读全文
posted @
2025-02-24 15:51
axuu
阅读(26)
推荐(0)
2025/2/23 LeetCode151. 反转字符串中的单词 // 笔记:python中 split(),strip(),[::-1]," ".join(iterable)的用法
摘要:151. 反转字符串中的单词 - 力扣(LeetCode) 之前做的2024/12/14 【字符串】LeetCode151.反转字符串中的单词 【√】知识点:几个易错点,split函数 - axuu - 博客园 这些函数又忘了。 总结 split(): 拆分字符串为列表。 strip(): 去除字符
阅读全文
posted @
2025-02-24 09:52
axuu
阅读(10)
推荐(0)
2025/1/4 【双指针法】 卡码网54. 替换数字 知识点:str.isdigit()
摘要:https://kamacoder.com/problempage.php?pid=1064 双指针法,从后向前遍历: 借用一个list,从后向前遍历,碰到数字就换“number”存到对应索引上: def numTostr(s: str): s_list = list(s) i = 0 for ch
阅读全文
posted @
2025-01-04 16:45
axuu
阅读(30)
推荐(0)
2025/1/3 【双指针】LeetCode344.反转字符串 【√】
摘要:在【字符串】模块做过 https://www.cnblogs.com/spp20/p/18609067
阅读全文
posted @
2025-01-03 20:44
axuu
阅读(10)
推荐(0)
知识点笔记:【十大经典排序算法】
摘要:1.0 十大经典排序算法 | 菜鸟教程 【数据结构】八大排序(超详解+附动图+源码)_插入排序-CSDN博客 慢慢全部过一遍
阅读全文
posted @
2025-01-03 15:42
axuu
阅读(7)
推荐(0)
2025/1/2 【双指针法】LeetCode27.移除元素 【√】
摘要:27. 移除元素 - 力扣(LeetCode) 代码随想录 数组的元素在内存地址中是连续的,不能单独删除数组中的某个元素,只能覆盖。 My answer:快慢指针法 class Solution: def removeElement(self, nums: List[int], val: int)
阅读全文
posted @
2025-01-02 12:59
axuu
阅读(12)
推荐(0)
2024/12/17 【字符串】LeetCode 459.重复的子字符串🌺🌺🌺 【❌】字符串篇总结
摘要:https://programmercarl.com/0459.%E9%87%8D%E5%A4%8D%E7%9A%84%E5%AD%90%E5%AD%97%E7%AC%A6%E4%B8%B2.html#%E6%80%9D%E8%B7%AF https://leetcode.cn/problems/r
阅读全文
posted @
2024-12-28 21:01
axuu
阅读(41)
推荐(0)
2024/12/16 【字符串】LeetCode28.找出字符串中第一个匹配项的下标/实现strStr()🌺🌺🌺 【❌】 知识点:KMP🌟🌟🌟,find函数,index函数
摘要:代码随想录 文本串,模式串 前缀表,前缀(包含首字母,不包含尾字母的所有字串),后缀(包含尾字母,不包含首字母的所有字串) 最长相等前后缀 next数组/prefix数组 帮你把KMP算法学个通透!(理论篇)_哔哩哔哩_bilibili 解法1:利用KMP方法,前缀表(不减一) class Solu
阅读全文
posted @
2024-12-23 15:47
axuu
阅读(16)
推荐(0)
2024/12/15 【字符串】卡码网55.右旋字符串 【√】 知识点:input函数的返回值类型是字符串
摘要:55. 右旋字符串(第八期模拟笔试) 右旋字符串 | 代码随想录 def rotateRight(s: str, k: int): t = s[-k:] s = t + s[:-k] return s if __name__ == "__main__": k = int(input()) s = i
阅读全文
posted @
2024-12-22 10:55
axuu
阅读(49)
推荐(0)
2024/12/14 【字符串】LeetCode151.反转字符串中的单词 【√】知识点:几个易错点,split函数
摘要:151. 反转字符串中的单词 - 力扣(LeetCode) 代码随想录 (programmercarl.com) 编程实现了Python中split函数的简单分割功能 class Solution: def mySplit(self, s: str) -> list: n = len(s) i =
阅读全文
posted @
2024-12-18 05:29
axuu
阅读(38)
推荐(0)
2024/12/13 【字符串】卡码网54.替换数字 知识点:数组填充类问题中,用到的从后向前操作的双指针法
摘要:54. 替换数字(第八期模拟笔试) 替换数字 | 代码随想录 和LeetCode不一样,需要完成函数的编写和测试函数的主函数体的编写,要自己输入输出。 注意的是输出不要有多余的提示内容,会报错。 def toNumber(s : str): s_list = list(s) n = len(s) f
阅读全文
posted @
2024-12-17 16:04
axuu
阅读(70)
推荐(0)
2024/12/12 【字符串】LeetCode541. 反转字符串 II 【√】知识点:字符串是不可变类型,及其与切片的关系,理解[ : : -1]
摘要:541. 反转字符串 II - 力扣(LeetCode) 代码随想录 题意理解需要花点时间,与昨天的344. 反转字符串 - 力扣(LeetCode)不同在于,昨天题目的字符串是字符列表类型,今天的字符串是双括号括起来的str类型。 这样造成了一些处理上的不同:需要考虑到str类型是不可变类型,对其
阅读全文
posted @
2024-12-17 10:16
axuu
阅读(51)
推荐(0)
2024/12/11 【字符串】LeetCode344.反转字符串 【√】解法众多:双指针,栈,range,reversed,切片,列表推导,reverse,交换函数实现的两种方法
摘要:344. 反转字符串 - 力扣(LeetCode) 代码随想录 解法1:双指针 因为while每次循环需要进行条件判断,而range函数不需要,直接生成数字,因此时间复杂度更低。推荐使用range class Solution: def reverseString(self, s: List[str
阅读全文
posted @
2024-12-16 07:00
axuu
阅读(63)
推荐(0)
2024/12/10 【哈希表】LeetCode18.四数之和 【√】哈希表篇总结
摘要:代码随想录 18. 四数之和 - 力扣(LeetCode) 参照LeetCode13,三数之和的双指针解题思路。 要注意,不要判断nums[i] > target就返回了。 我的解法: 类似三数之和,先确定left和right指针分别为i+1和len(nums)-1,而mid(第三个指针)设置为ri
阅读全文
posted @
2024-12-15 09:47
axuu
阅读(23)
推荐(0)