两数之和

哈希表

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        unordered_map<int, int> m;
        int n = nums.size();
        for (int i = 0; i < n; ++i)
        {
            auto it = m.find(target - nums[i]);
            if (it != m.end())
            return {it->second, i};
            m[nums[i]] = i;
        }
        return {};
    }
};

时间复杂度:O(n)
空间复杂度:O(n)
拓展:三数之和,四数之和

全部评论

相关推荐

09-24 18:30
已编辑
长春工业大学 产品经理
小肥罗:HR就是好人的缩写哈哈哈哈
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务