解题思路:
采用双重for循环来判断两个数,又加上一个while、if判断来确定后两个数
class Solution: def fourSum(self, nums: List[int], target: int) -> List[List[int]]: #对数组进行大小排序 nums.sort() # return nums if len(nums) < 4: return [] ans = [] for i in range(0, len(nums)-3): nums_a = nums[i] for j in range(i+1, len(nums)-2): nums_b = nums[j] c = j + 1 d = len(nums) - 1 while (c < d): if nums_a + nums_b + nums[c] + nums[d] == target: res = [nums_a, nums_b, nums[c], nums[d]] if res not in ans: ans.append(res) d -= 1 elif nums_a + nums_b + nums[c] + nums[d] > target: d -= 1 else: c += 1 return ans