LeetCode第18题:四数之和 题目:给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 解法一:罗里吧嗦写了一堆,还是不对,很复杂,显然方法不好,没有改对就放弃了。。 class Solution { public List<List<Integer>> fourSum(int[] nums, int target) { List<List<Integer>> ans=new ArrayList(); int len=nums.length; if(len<4 || nums==null) return ans; Arrays.sort(nums); // 排序 for(int i=0;i<=len-4;i++){ if(nums[i]>target) return ans; int j=i+1; int k=j+1; int m=k+1; boolean Falg=true; while(m<len && Falg){ int sum=nums[i]+nums[j]+nums[k]+nums[m]; if(sum>target) break; else if(sum<target){ if(m==len-1){ if(k==len-2){ if(j==len-3){ Falg=false; } j++; k=j+1; m=k+1; } k++; m=k+1; } m++;