LeetCode笔记-01-两数之和

在这里插入图片描述
解题思路:
1.使用暴力解题,两层循环,找到两数之和的组合;
2.构建哈希表,通过边构建边查找的方式,找到两数之和的组合;

代码

class Solution {
    
    
public:
    vector<int> twoSum(vector<int>& nums, int target) {
    
    
        map<int, int> hashtable;
		vector<int> result;
		for (auto it = nums.begin(); it != nums.end(); it++) {
    
    
			if (hashtable.find(target-*it) != hashtable.end()) {
    
    
                result.push_back(hashtable[target - *it]);
				result.push_back(it - nums.begin());				
				return result;
			}
			hashtable.insert(make_pair(*it, it - nums.begin()));
		}
		return vector<int>();
    }
};

猜你喜欢

转载自blog.csdn.net/liushao1031177/article/details/120194640