zoukankan      html  css  js  c++  java
  • LeetCode 1——两数之和

    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」!

  • 相关阅读:
    正则工具
    反射工具类
    FastJson前置属性过滤器
    随机数工具类
    对图片进行压缩,水印,伸缩变换,透明处理,格式转换操作
    ChineseNumber 转换
    auth src
    tex src
    freeradius防止用户异常断开无法重新链接上
    gnu
  • 原文地址:https://www.cnblogs.com/seniusen/p/10152830.html
Copyright © 2011-2022 走看看