leetCode四數之和

2021-09-24 20:45:18 字數 927 閱讀 8389

18.給定乙個包含 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]

]解法:

public static list> foursum(int nums, int target)

}   

}list> lists = new arraylist<>();

hashset> map=new hashset<>(lists);

for(int i=0;itarget)else if(nums[i]+nums[j]+nums[left]+nums[right]list = new arraylist<>();

list.add(nums[i]);

list.add(nums[j]);

list.add(nums[left]);

list.add(nums[right]);

map.add(list);

left++;

right--;

}  }}}

lists.addall(map);

return lists;

}public static void main(string args) ;

int target=0;

list> l=foursum(nums,target);

system.out.println(l);

}

LeetCode 四數之和

給定乙個包含 n 個整數的陣列 nums 和乙個目標值 target,判斷 nums 中是否存在四個元素 a,b,c 和 d 使得 a b c d 的值與 target 相等?找出所有滿足條件且不重複的四元組 注意 答案中不可以包含重複的四元組。給定陣列 nums 1,0,1,0,2,2 和 tar...

Leetcode 兩數之和,三數之和,四數之和

兩數之和的思想比較簡單啦 就是 使用乙個map儲存其值,然後將其下標返回即可 三數之和 四數之和的思想比較類似,就是使用雙指標的思想 三數之和的 如下所示 四數之和的 如下 有一些優化 四數之和是在三數之和的基礎上增加了一層迴圈,class solution 獲取當前最大值 int max1 num...

從 兩數之和 四數之和(LeetCode)

兩數則固定乙個元素 指標 三數則固定兩個元素 雙指標 四數則固定乙個元素 三數和。因為提前將陣列排序過,所以若當前和 target,則l 若當前和若當前和 target,則return或儲存。陣列中元素可以重複,但是不能反回相同的答案,如 1,1,1,2 target 3 可以反回,但不能多次返回 ...