给定一个包含 n 个整数的数组 nums
,判断 nums
中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。
注意:答案中不可以包含重复的三元组。
例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]
class Solution:
def threeSum(self, nums):tL = nums
tL = list(tL)
L = len(tL)
result_list = []
for i in range(L):
for j in range(i+1,L):
for k in range(j+1,L):
if tL[i]+tL[j]+tL[k] == 0:
result_list.append([tL[i],tL[j],tL[k]])
L =len(result_list)
dem = []
for i in range(L):
for j in range(i+1,L):
if set(result_list[i]) == set(result_list[j]):
dem.append(j)
dem = set(dem)
#print(dem)
result = []
for i in range(len(result_list)):
if i not in dem:
result.append(result_list[i])
#print(result_list)
#print(result)
return result
转载请标明出处:三数之和
文章来源: 三数之和