1. 两数之和

1. 题目描述

1. 两数之和_第1张图片

2. 题解思路

2.1 方法一:暴力法

  1. 基本思路:遍历nums中每个元素,并判断其需求值是否在其之后出现。
  2. 代码:
    class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
    	n = len(nums)
    	for i in range(n):
    		need = target - nums[i]
    		if need in nums[i+1:]:
    			index = nums[i+1:].index(need)+i+1
    
  3. 运行结果:
    1. 两数之和_第2张图片

2.2 方法二:字典

  1. 基本思路:采用字典方法,边写入边判断,用空间换取时间
  2. 代码:
    class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
    	dic = {
           }
    	n = len(nums)
    	for i in range(n):
    		if target - nums[i] in dic:
    			return dic[target-nums[i]], i
    		else:
    
  3. 运行结果:
    1. 两数之和_第3张图片

你可能感兴趣的:(力扣题解积累)