自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode #2.两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。

2022-12-07 04:11:43 368 1

原创 LeetCode #101. 对称二叉树

LeetCode #101. 对称二叉树

2022-08-08 19:30:39 312

原创 LeetCode #104.二叉树的最大深度

LeetCode #104.二叉树的最大深度

2022-08-08 18:45:06 268

原创 LeetCode #100. 相同的树

LeetCode #100. 相同的树

2022-08-07 00:34:38 209

原创 LeetCode #94.二叉树的中序遍历

LeetCode #94.二叉树的中序遍历

2022-08-05 18:33:40 308

原创 LeetCode #88.合并两个有序数组

LeetCode #88.合并两个有序数组

2022-07-29 17:00:25 135

原创 LeetCode #83. 删除排序链表中的重复元素

LeetCode #83. 删除排序链表中的重复元素刷题记录

2022-07-26 21:37:11 320

原创 LeetCode #3.无重复字符的最长子串

力扣 | 3.无重复字符的最长子串题目截图方法一:暴力法利用列表。利用列表切片来滑动窗口。遍历字符串s,不断将字符串的字符添加到列表中。如果发现字符串中新的元素在前面的列表中有,立刻使用切片,使切片的开头切在重复元素的后一位,然后添加那个重复的元素(此时已经把重复的部分切掉了),再继续往下遍历。每一次添加都比较长度,选择长度大的那个,最后返回最大子串长度。class Solution: def lengthOfLongestSubstring(sel

2022-05-28 18:39:38 150

原创 LeetCode #19.删除链表的倒数第N个结点

力扣 | 19.删除链表的倒数第N个结点题目截图方法一:两次遍历第一次遍历计算链表的长度得到长度length,然后利用k=length-n取得要删除的结点处的位置。第二次遍历,到达k位置的时候利用cur.next = cur.next.next将结点指针指向要被删除结点的后面一个。这样就成功删除了。考虑到只有一个节点要被删除的情况,所以在头结点前还设置了一个节点ans,最后返回ans.next。class Solution: def removeNthFrom.

2022-05-28 16:22:30 98

原创 LeetCode #876.链表的中间结点

力扣 | 876.链表的中间结点题目截图

2022-05-28 14:05:16 188

原创 LeetCode #557.反转字符串中的单词 III

力扣 | 557.反转字符串中的单词 III题目截图

2022-05-27 00:53:41 674

原创 LeetCode #344.反转字符串

力扣 | 344.反转字符串方法:双指针简单题重拳出击!直接用双指针,从两边往中间移动,交换左右指针指向的元素,完成反转。class Solution: def reverseString(self, s: List[str]) -> None: """ Do not return anything, modify s in-place instead. """ n = len(s) lef.

2022-05-26 16:17:44 1107

原创 LeetCode #167.两数之和 II - 输入有序数组

力扣 | 167.两数之和 II - 输入有序数组题目截图方法一:暴力法两次循环即可找到对应数组。暴力法会因为超时而无法通过测试。注意:题目要求必须是唯一解,且不可以重复同一下标,所以出现答案是两个相同数字时,必须返回连个不同的下标。所以循环的时候外层设为i在0到n之间,内层设置为j在i+1到n之间。class Solution: def twoSum(self, numbers: List[int], target: int) -> List[int]:

2022-05-26 15:51:22 1153

原创 LeetCode #283.移动零

力扣 | 283.移动零题目截图方法一:两次遍历利用两次循环,第一次循环记录数组中非零的部分并覆盖原数组。记录数组中零元素个数。第二次循环从n-count开始,将数组末尾部分的元素赋值为零。class Solution: def moveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead.

2022-05-25 21:30:03 127

原创 LeetCode #189.轮转数组

力扣 | 189.轮转数组题目截图方法一:三次反转当每当k等于n倍速,完成一整个循环,相当于没有变化。利用k=k%n,去除无效变化的部分。将整个数组分为前后两部分,三次反转后得到最后的结果。例如:nums=[1, 2, 3, 4, 5, 6, 7]k = 3则分为[1, 2, 3, 4]和[5, 6, 7]两段。第一次反转第一段,得[4, 3, 2, 1, 5, 6, 7]。第二次反转第二段,得[4, 3, 2, 1, 7, 6, 5]。第三次全部反转

2022-05-25 20:25:11 153

原创 LeetCode #977.有序数组的平方

力扣 | 977.有序数组的平方题目截图方法一:直接排序class Solution: def sortedSquares(self, nums: List[int]) -> List[int]: return sorted(num * num for num in nums)测试用全部代码from typing import Listclass Solution: def sortedSquares(self, nums: List

2022-05-25 00:37:46 198

原创 LeetCode #35.搜索插入位置

力扣 | 35.搜索插入位置题目截图思路:这是典型了二分法查找,只不过最后返回的不是True和False。而是数组索引。方法:二分法直接用二分法即可,无需任何创造,稍微修改一下返回值。from typing import Listclass Solution: def searchInsert(self, nums: List[int], target: int) -> int: n = len(nums) first = 0

2022-04-24 20:15:18 67

原创 LeetCode #14. 最长公共前缀

力扣 | # 14.最长公共前缀利用zip函数实现zip函数.yield

2022-04-16 22:16:16 1415

原创 LeetCode #26.删除有序数组中的重复项

力扣 | 26.删除有序数组中的重复项题目截图

2022-04-16 16:22:47 139

原创 LeetCode #13. 罗马数字转整数

力扣 | # 13.罗马数字转整数题目截图利用enumerate实现enumerate函数def my_enumerate(datas): for i in range(len(datas)): yield i, datas[i]

2022-04-15 16:11:17 102

原创 LeetCode #9.回文数

力扣 | #9 回文数题目截图

2022-04-09 18:01:25 49

原创 LeetCode #7.整数反转

力扣 | 7.整数反转题目截图方法一:数学法思路:利用“%”取模,利用“/”除数。注意:python默认是浮点算法,所以要加上int()强制转换为整数型。同时题目要求输入输出的范围都必须是,此处做两次判断。同时要判断是否为负数。输入的x为0时和正数情况一致,不做区分。我分成两个方法。输入是负数时,先将负数转为正数,然后直接引用正数的方法反转,最后再将其变为负数。class Solution: def reverse(self, x: int) ->

2022-04-08 18:42:51 570

原创 LeetCode #1.两数之和

1.两数之和力扣:1.两数之和方法一:枚举法(暴力破解)时间复杂度class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: n = len(nums) for i in range(n): for j in range(i + 1, n): if nums[i] + nums[j] == .

2022-04-01 00:22:50 968

空空如也

空空如也

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

TA关注的人

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