欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

四数之和(Python)

时间:2023-05-27



解题思路:
采用双重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

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。