leetcode 1.两数之和(重刷)

暴力解法:

python 复制代码
class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
        for i in range(len(nums)-1):
            for j in range(i+1,len(nums)):
                if (nums[i]+nums[j]) == target:
                    return [i,j]
        


        

空间换时间:哈希表

python 复制代码
class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
        # 创建一个空字典,用来做"空间换时间"
        # 格式为 {数字: 这个数字对应的索引}
        hash_map = {}

        for i in range(len(nums)):
            current_num = nums[i]

            complement = target-nums[i]

            if complement in hash_map:
                return [hash_map[complement],i]
            
            hash_map[current_num] = i
相关推荐
插件开发8 分钟前
矢量路径运算如何选GPU技术?——适用算法对比及OpenGL/Direct3D/CUDA选型指南
算法·3d
我爱cope10 分钟前
【Agent智能体23 | 规划-规划工作流】
人工智能·设计模式·语言模型·职场和发展
8Qi818 分钟前
LeetCode 72:编辑距离(Edit Distance)—— 题解
算法·leetcode·职场和发展·动态规划
SoftLipaRZC25 分钟前
顺序表的应用:通讯录项目与经典算法实战
算法
8Qi826 分钟前
LeetCode 583. 两个字符串的删除操作
算法·leetcode·职场和发展·动态规划
tigershang30 分钟前
卡尔曼滤波:不确定世界中的最优估计
人工智能·算法·机器学习
一个儒雅随和的男子43 分钟前
限流算法详细剖析
java·服务器·算法
工业胶粘剂技术2 小时前
单组分高温环氧结构胶 K-EP280 完整技术参数与工程选型分析
算法·制造
小欣加油3 小时前
Leetcode31 下一个排列
数据结构·c++·算法·leetcode·职场和发展
_日拱一卒3 小时前
LeetCode:39组合总和
java·算法·leetcode·职场和发展