难度挺大..降重细节多
看到个老哥的评价,醍醐灌顶:
说白了就是降维处理, 由三维降到二维, 针对任意索引i的\(nums[i]\) 求\([i+1,size )\)范围内不重复的$$twoSum target = - nums[i];$$后面还有一个四数之和, 一样的问题, 先降到三维, 再降到二维,
https://gitee.com/programmercarl/leetcode-master/blob/master/problems/0015.三数之和.md
本来自己做就是借助hash来处理,结果发现降重非常复杂,反复用排序再set来降重,结果复杂度直接炸裂
正确且简介思路是用排序+三指针:
i负责直接扫描list,left、right负责在i右侧区域扫描
这题还得回来复习做,自己思路没跟上