LeetCode——两数之和

题目地址:https://leetcode-cn.com/problems/two-sum/

解题思路:因为数组中同一个元素不能使用两遍。我们可以使用map来进行排除。

所用到的函数:

mp.count()//判断这个数是否存在

具体代码:

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
      map<int, int> mp;
      vector<int> result;
      for (int i = 0; i < nums.size(); i++)
          mp[nums[i]] = i;
         for (int j = 0; j < nums.size(); j++) {
            //数组中同一个元素不能使用两遍。
        if (mp.count(target - nums[j]) == 1 && mp[target - nums[j]] != j) {
            result.push_back(j);
            result.push_back(mp[target - nums[j]]);
            break;
          }   
    }
    return result;
  }
}; 

 

posted @ 2020-07-06 17:14  CCxiao5  阅读(104)  评论(0编辑  收藏  举报