满足要求的四元组集合为:
[
[-1, 0, 0, 1],
[-2, -1, 1, 2],
[-2, 0, 0, 2]
]
题目解析
还是老习惯,看一个题没有想到一个好的思路,去看题目标签包含哪种标签...回到这个题,俺之前考虑过不使用开头就排序好的数据,也想过使用空间换时间的方法,也使用过多个辅助散列表去标记,但是都败在重复的数据。...假设输入示例:[-5, 5, 4, -3, 0, 0, 4, -2],target = 4 不预先排序,直接用散列表,将所有的两数求和设为 key,两数的下标组为 value 。...如果要找到满足条件的四元组,将 target - key = 4 - (0) = 4,key 为 4 ,对应的 value 为 [[2, 4], [4, 6]] 。...因为四个下标随便两两交换都会产生重复的四元组,可以固定四个下标产生一个唯一性的四元组。