Leetcode||1. Two Sum

来源:互联网 发布:字符数组相减 编辑:程序博客网 时间:2024/06/06 04:28

先存map里再查找。
时间复杂度O(n)。

class Solution {public:    vector<int> twoSum(vector<int>& nums, int target) {        map<int,int>m;        int len=nums.size();        std::vector<int> v;        if(len<2)return v;        for(int i=0;i<len;i++)        {            m[nums[i]]++;        }        for(int i=0;i<len;i++)        {            int tmp=target-nums[i];            if((tmp!=nums[i]&&m[tmp]==1)||(tmp==nums[i]&&m[tmp]>1))            {                v.push_back(i);            }        }        return v;    }};
0 0
原创粉丝点击