LeetCode 1——两数之和

发布时间:2019-08-06 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了LeetCode 1——两数之和脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

1. 题目

LeetCode 1——两数之和

2. 解答

  • C++

遍历数组,将数组中的元素和索引分别作为 unordered_map 的键和值,如果目标值和当前元素的差已经存于在map 的键中,即找到结果。

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        
        unordered_map<int, int> tabel;
        vector<int> index;
        int n = nums.size();
        for (int i = 0; i < n; i++)
        {
            int val = target - nums[i];
            
            if (tabel.count(val) == 1)
            {
                index.push_back(tabel[val]);
                index.push_back(i);
                return index;
            }
            else
            {
                tabel[nums[i]] = i;
            }
        }
    }
};
  • Python

遍历数组,将数组中的元素和索引分别作为字典的键和值,如果目标值和当前元素的差已经存于在字典的键中,即找到结果。

class Solution:
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        hash_table = {}       
        
        for index, value in enumerate(nums):
            
            num = target - value
            
            if num in hash_table:
                return [hash_table[num], index]
            
            hash_table[value] = index

获取更多精彩,请关注「seniusen」!

LeetCode 1——两数之和

脚本宝典总结

以上是脚本宝典为你收集整理的LeetCode 1——两数之和全部内容,希望文章能够帮你解决LeetCode 1——两数之和所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。