LeetCode每日一题 (34) 18. 四数之和

    科技2024-11-17  8

    18. 四数之和



    class Solution { public: vector<vector<int>> fourSum(vector<int>& nums, int target) { vector<vector<int>> result; vector<int> tempresult; sort(nums.begin(),nums.end()); // 排序 Search(nums,target,0,4,tempresult,result); return result; } void Search(vector<int>& nums,int target,int start,int count,vector<int> &tempresult,vector<vector<int>> &result){ if(target==0&&count==0){ // 剩余需要值为零,剩余需要个数为零(结果ok) result.push_back(tempresult); return; } if(count==0) return; // 剩余个数为零了 ,还没找到,个数超过了,结束 for(int i=start;i<nums.size();i++){ if((nums[i]>target&&nums[i]>0)) return; if(i==start||nums[i]!=nums[i-1]){ tempresult.push_back(nums[i]); Search(nums,target-nums[i],i+1,count-1,tempresult,result); tempresult.pop_back(); } } } };


    Processed: 0.039, SQL: 8