vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {
        // write code here
        vector<int>res;
        unordered_map<int,int>hash1;
        unordered_map<int,int>hash2;
        for(int i=0;i<nums1.size();i++)
            hash1[nums1[i]]++;
        for(int i=0;i<nums2.size();i++)
            hash2[nums2[i]]++;
        for(int i=0;i<nums1.size();i++){
            if(hash2[nums1[i]]>0){
                res.push_back(nums1[i]);
                hash2[nums1[i]]=0;
            }
        }
        return res;
    }