1. 两数之和;暴力和哈希两种解法

https://leetcode-cn.com/problems/two-sum/

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        vector<int> res;
        for(int i=0;i<nums.size()-1;i++){
            for(int j=i+1;j<nums.size();j++){
                if((nums[i]+nums[j])==target){
                    res.push_back(i);
                    res.push_back(j);
                    break;
                }
            }
        }
        return res;
    }
  
};
 unordered_map<int,int> hash;
        for(int i=0;i<nums.size();i++){
            int ano  = target-nums[i];            
            if(hash.count(ano)){
                res.push_back(i);
                res.push_back(hash[ano]);
                break;
                }
             hash[nums[i]] = i;   
        }
            return res;
    }
发布了35 篇原创文章 · 获赞 5 · 访问量 2436

猜你喜欢

转载自blog.csdn.net/qq_24884193/article/details/100156349