【哈希】1. leetcode 1. 两数之和-3 代码

时间:2024-10-20 08:25:23
class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        vector<int> res;
        unordered_map<int, int> hash;

        for (int i = 0; i < nums.size(); ++ i)
        {
            int x = target - nums[i];   //根据nums[i],找nums中是否有值为x --> 逆向思考
            if (hash.count(x))
                return {hash[x], i};
            
            //如果没有找到就建立哈希映射
            hash[nums[i]] = i;
        }

        return {-1, -1};
    }
};

在这里插入图片描述

相关文章