小工具知识网

当前位置: 首页 > 行业知识 > LeetCode---【和的操作】

行业知识

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

上一篇:usedtodo怎么读音?

下一篇:腾讯云服务器怎么计费?