LEETCODE 15 三數之和

2021-09-16 21:30:51 字數 936 閱讀 3740

題目簡介:

解題思路:

a+b+c=0,無非有一下幾種情況:

1⃣️a,b,c三個數字有兩個是相同的,相同的數字在陣列**現的次數必須大於1;

2⃣️a為負數,b為正數數,c小於a或者c大於b;

3⃣️c=0.(除此之外,之所以不考慮:負數**:

def threesum(self, nums: list[int]) -> list[list[int]]:

""":type nums: list[int]

:rtype: list[list[int]]

"""dict = {}

pos=

neg=

for ele in nums:

if ele not in dict:

dict[ele] = 0

dict[ele] += 1

if 0 in dict and dict[0] > 2:

result = [[0,0,0]]

else:

result =

for ele in dict:

if ele>0:

elif ele<0:

for p in pos:

for n in neg:

target = -(p + n)

if target in dict:

#兩個相同的整數或者負數

if target in [p,n] and dict[target]>1:

elif target < n or target > p or target == 0:

return result

LeetCode 15 三數之和

15.給定乙個包含 n 個整數的陣列 nums,判斷 nums 中是否存在三個元素 a,b,c 使得 a b c 0 找出所有滿足條件且不重複的三元組。注意 答案中不可以包含重複的三元組 方法一,個人解法正確,但是效率太低,時間複雜度o n 3 時間超時,無法提交至leetcode public s...

leetcode 15 三數之和

給定乙個包含 n 個整數的陣列nums,判斷nums中是否存在三個元素 a,b,c 使得 a b c 0 找出所有滿足條件且不重複的三元組。注意 答案中不可以包含重複的三元組。例如,給定陣列 nums 1,0,1,2,1,4 滿足要求的三元組集合為 1,0,1 1,1,2 class solutio...

leetcode15 三數之和

給定乙個包含 n 個整數的陣列nums,判斷nums中是否存在三個元素 a,b,c 使得 a b c 0 找出所有滿足條件且不重複的三元組。注意 答案中不可以包含重複的三元組。例如,給定陣列 nums 1,0,1,2,1,4 滿足要求的三元組集合為 1,0,1 1,1,2 先找兩數之和,然後再用un...