美文网首页
1. Two Sum

1. Two Sum

作者: 羲牧 | 来源:发表于2022-01-04 18:31 被阅读0次

Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

You can return the answer in any order.

Example 1:

Input: nums = [2,7,11,15], target = 9
Output: [0,1]
Output: Because nums[0] + nums[1] == 9, we return [0, 1].
Example 2:

Input: nums = [3,2,4], target = 6
Output: [1,2]
Example 3:

Input: nums = [3,3], target = 6
Output: [0,1]

Constraints:

2 <= nums.length <= 104
-109 <= nums[i] <= 109
-109 <= target <= 109
Only one valid answer exists.

三种语言的版本:python3 C++ Golang

class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
        nums_hash = {}
        for k, v in enumerate(nums):
            if v in nums_hash:
                return [k, nums_hash[v]]
            else:
                nums_hash[target-v] = k
            
        
class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        map<int, int> numsHash;
        vector<int> result;
        for(int i = 0; i < nums.size(); i++){
            auto iter = numsHash.find(nums[i]);
            if(iter == numsHash.end()){
                numsHash[target-nums[i]] = i;
            }else{
                result.push_back(i);
                result.push_back(numsHash[nums[i]]);
                break;
            }
        }
        return result;
    
    }
        
};
func twoSum(nums []int, target int) []int {
    numsHash := make(map[int]int)
    result := make([]int, 2)
    for k, v := range nums{
        index, exists := numsHash[v]
        if exists{
            result[0] = index
            result[1] = k
            break
        }else{
            numsHash[target-v] = k
        }
    }
    return result
    
}

相关文章

  • LeetCode 1. Two Sum (Easy)

    LeetCode 1. Two Sum (Easy) LeetCode 1. Two Sum (Easy) 原题链...

  • 1. Two Sum

    1. Two Sum 题目:https://leetcode.com/problems/two-sum/ 难度: ...

  • leetcode hot100

    1. Two Sum[https://leetcode-cn.com/problems/two-sum/] 字典(...

  • leetCode #1

    #1. Two Sum

  • 1. Two Sum

  • 1. Two Sum

    Given an array of integers, return indices of the two num...

  • 1. Two Sum

    Description Given an array of integers, return indices of...

  • 1. Two Sum

    Problem Given an array of integers, return indices of the...

  • 1. Two Sum

    Given an array of integers, return indices of the two num...

  • 1. Two Sum

    Leetcode: 1. Two SumGiven an array of integers, return in...

网友评论

      本文标题:1. Two Sum

      本文链接:https://www.haomeiwen.com/subject/bpfccrtx.html