1.四数相加lettcode454
我的想法使用暴力解法,我写出来啦~很开心,但是会超时,时间复杂度太高了,这里应该是O(n^4),然后看下优化的哈希写法
class Solution { public: int fourSumCount(vector<int>& nums1, vector<int>& nums2, vector<int>& nums3, vector<int>& nums4) { //题目的意思是每个数组中挑一个数字,然后加起来的结果是0 //问这样的组合有多少 //暴力解法是挨个循环,用4层,然后去重,统计元素个数 vector< vector<int>> v1; for(int i=0;i<nums1.size();++i){ for(int j=0;j<nums2.size();++j){ for(int k=0;k<nums3.size();++k){ for(int l=0;l<nums4.size();++l){ if(nums1[i]+nums2[j]+ nums3[k]+nums4[l]==0){ vector<int> tmp; tmp.push_back(nums1[i]); tmp.push_back(nums2[j]); tmp.push_back(nums3[k]); tmp.push_back(nums4[l]); v1.push_back(tmp); } } } } } return v1.size(); } };
标签:tmp,四数,--,day7,back,vector,push From: https://www.cnblogs.com/bojiandkake/p/17062357.html