行业知识
LeetCode---【和的操作】
2026-11-02 07:14:14
来源:互联网转载
目录
- 两数之和
- 我的答案
- 在b站up那里学到的【然后自己复写】
- 和为 K 的子数组
- 在b站up那里学到的【然后自己复写】
- 三数之和
- 在b站up那里学到的【然后自己复写】
- 两数相加【链表】
- 我的半路答案:没有看到是链表
- 在b站up那里学到的【复写失败后整理】
两数之和
我的答案
class Solution(object): def twoSum(self, nums, target): leng=len(nums) for i in range(leng): for j in range(leng): if nums[i]+nums[j]==target and i!=j: return [i,j]
在b站up那里学到的【然后自己复写】
- 忘记怎么取list的第二个值了。【利用range的特性】
class Solution(object): def twoSum(self, nums, target): leng=len(nums) for i in range(0,leng): for j in range(i+1,leng): if nums[i]+nums[j]==target and i!=j: return [i,j]
- 哈希表【空间换时间】
class Solution(object): def twoSum(self, nums, target): mapping = {} for i in range(0, len(nums)): mapping[nums[i]] = i for j in range(0, len(nums)): diff = target - nums[j] if (diff in mapping and mapping[diff] != j): return [j,mapping[diff]];和为 K 的子数组
在b站up那里学到的【然后自己复写】
class Solution(object): def subarraySum(self, nums, k): count = 0 dic={} dic[0] = 1 cur_sum = 0 for num in nums: cur_sum = cur_sum + num if cur_sum-k in dic:# 很巧的思路 count=count+dic[cur_sum-k] if cur_sum in dic: dic[cur_sum] +=1 else: dic[cur_sum] = 1 return count三数之和
在b站up那里学到的【然后自己复写】
class Solution(object): def threeSum(self, nums): resol=[] nums.sort() for i in range(len(nums)): cur = i if nums[cur]>0: return resol if cur>0 and nums[cur-1] == nums[cur]: continue # 去重 left = cur+1 right = len(nums)-1 while left0: right-=1 elif total
- 哈希表【空间换时间】
- 忘记怎么取list的第二个值了。【利用range的特性】
上一篇:usedtodo怎么读音?
下一篇:腾讯云服务器怎么计费?