(LeetCode每日一刷61)18 四數之和

2021-09-22 20:19:04 字數 788 閱讀 3749

給定乙個包含 n 個整數的陣列nums和乙個目標值target,判斷nums中是否存在四個元素 a,

b,c 和 d ,使得 a + b + c + d 的值與target相等?找出所有滿足條件且不重複的四元組。

注意:

答案中不可以包含重複的四元組。

示例:

給定陣列 nums = [1, 0, -1, 0, -2, 2],和 target = 0。

滿足要求的四元組集合為:

[ [-1, 0, 0, 1],

[-2, -1, 1, 2],

[-2, 0, 0, 2]

]

和三數之和思路一樣,也是用雙指標。將2個數看成乙個整體。就是在去重那裡麻煩了點。要去兩次重複,第一次是第乙個數的重複,第二次去重是第二個數的重複。舉個例子

1 1 2 3 4     target = 10, 則結果有【1 2 3 4】和【1 2 3 4】所以要去重第乙個數。

1 1 1 2 3 6     target = 7,去重1後,結果為【1 1 2 3】 【1 1 2 3】,發現第二個數重複了,所以要去重第二個數。

三數之和中只需要去重第乙個數就行了。

class solution 

else if (temp > t)

else}}

}return res;

}};

leetcode每日一刷

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。class solution object deftwosum self,nums,target ...

LeetCode每日一刷

004 尋找兩個有序陣列的中位數 題目 給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。...

(LeetCode每日一刷43)896 單調數列

題目描述 如果陣列是單調遞增或單調遞減的,那麼它是單調的。如果對於所有i j,a i a j 那麼陣列a是單調遞增的。如果對於所有i j,a i a j 那麼陣列a是單調遞減的。當給定的陣列a是單調陣列時返回true,否則返回false。示例 示例 1 輸入 1,2,2,3 輸出 true示例 2 ...