自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 黑马程序员python46课

s=input("请输入一个字符串:")# print("回文")# print("不是")

2026-06-22 12:16:15 25

原创 力扣454

遍历 nums3 和 nums4 的两两之和,累加对应相反数的出现次数。# 统计 nums1 和 nums2 中所有两两之和的出现次数。

2026-04-24 12:06:25 265

原创 力扣169

题目保证多数元素一定存在,直接返回候选元素即可。# 与候选元素相同则计数+1,否则-1。# 计数器为0时,更换候选元素。# 初始化计数器和候选元素。

2026-04-24 12:03:25 191

原创 力扣80题

如果数组长度小于等于2,本身就允许最多2个重复,直接返回原长度即可。# idx 是慢指针:代表当前整理好、符合要求的数组末尾的下一个位置。# 如果不相等,说明当前元素出现次数还没超过2次,可以保留。# 前两个元素天然合法(最多2个重复),所以从下标2开始处理。# 当前元素 和 整理好部分里、往前数第2个元素比较。# 把当前合法元素,移动到慢指针idx的位置。# 合法数组长度+1,慢指针后移。# i 是快指针,从第3个元素开始遍历整个数组。# idx 最终的值就是整理后数组的有效长度。

2026-04-23 14:52:10 22

原创 力扣26题

该算法使用双指针法移除有序数组中的重复元素。慢指针i记录去重后的位置,快指针j遍历数组。当nums[j]≠nums[i]时,将nums[j]移到i+1位置。最终返回i+1作为去重后的长度。时间复杂度O(n),空间复杂度O(1),直接在原数组修改,满足题目要求。

2026-04-22 11:54:46 26

原创 力扣第1题

找到就返回两个数的下标。# 判断两个数的和是否等于目标值。# 内层循环:遍历i后面的数,避免重复。# 没找到(题目保证有解,这里只是占位)# 外层循环:遍历第一个数。

2026-04-21 11:56:39 29

原创 力扣88题

nums1[k] = nums2[j] # nums2当前元素更大(或相等),放入尾部。nums1[k] = nums1[i] # nums1当前元素更大,放入尾部。i -= 1 # nums1指针左移。j -= 1 # nums2指针左移。i = m - 1 # nums1有效元素尾指针(从后往前)# 处理nums2剩余元素(若nums1已遍历完,nums2还有剩余)j = n - 1 # nums2尾指针(从后往前)

2026-04-20 14:45:20 45

原创 力扣204

slow = slow.next # 慢指针每次走1步。fast = fast.next.next # 快指针每次走2步。# 第二步:从头节点出发,与相遇点同步走,相遇即环入口。return p # 返回入口节点。# 第一步:快慢指针遍历,找环内相遇点。# 初始化快慢指针,起点都是head。# 快指针到尾 → 无环。

2026-04-19 21:56:26 234

原创 力扣206

1. 初始化双指针:a 指向前驱节点(初始为空),b 指向当前节点(初始指向链表头)# 3. 保存后继节点:必须先存 b.next,否则改变指针后会断链找不到下一个节点。# 5. 双指针后移:a 移动到 b 的位置,b 移动到刚才保存的 c 的位置。# 6. 循环结束时,b 为空,a 指向原链表最后一个节点(即反转后的新头节点)# 4. 核心反转:让当前节点 b 的指针指向前驱节点 a。# 2. 遍历链表:只要当前节点 b 不为空,就继续循环。

2026-04-18 12:06:50 233

原创 力扣203

虚拟头节点,统一处理头部删除。

2026-04-17 20:59:32 21

原创 力扣59题

bottom -= 1 # 下边界向上缩一行。right -= 1 # 右边界向左缩一列。left += 1 # 左边界向右缩一列。top += 1 # 上边界向下缩一行。top = 0 # 上边界。bottom = n - 1 # 下边界。left = 0 # 左边界。right = n - 1 # 右边界。# 1. 左 → 右,遍历上边界。# 2. 上 → 下,遍历右边界。# 3. 右 → 左,遍历下边界。# 4. 下 → 上,遍历左边界。

2026-04-16 15:22:21 33

原创 力扣209

该代码实现了一个滑动窗口算法,用于在给定数组中找到和大于等于目标值的最短连续子数组长度。通过维护左右指针构成的窗口,当窗口和满足条件时记录长度并收缩左边界,否则扩展右边界。时间复杂度为O(n),空间复杂度O(1)。最终返回满足条件的最短子数组长度,若不存在则返回0。

2026-04-15 13:19:13 24

原创 力扣27题

k 用来记录:新数组的下标(也就是最后要保留的元素个数)# 把这个要保留的元素,放到 nums[k] 的位置上。# 如果当前元素 i 不等于要删除的值 val,就保留它。# 遍历结束后,k 就是移除 val 之后新数组的长度。# 保留了一个元素,k 向后移动一位。# 遍历原数组 nums 里的每一个元素 i。

2026-04-14 12:06:39 29

原创 算法训练营Day1 | LeetCode704 二分查找

本文记录LeetCode 704二分查找的Python实现,结合代码随想录与黑马程序员视频学习,代码由本人编写,豆包协助优化与添加注释,总结二分边界处理与常见问题。

2026-04-13 13:26:59 31

空空如也

空空如也

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

TA关注的人

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