6月16日周四,温度32度,多云,微风真的好热

可是题还是一样照做

532. 数组中的 k-diff 数对看到题目首选哈希表,去重最好的选择,但是会有个问题,比如说[1,3,5,1,3,7,5]....数组是什么样子的没关系,对于2-diff来说,[1,3]是一对,后面会轮到[3,1],但是[3,5]是一对,这样覆盖了前面的[3,1],然后[5,3]也是一对,这样就会数不清楚,也就是说3个数字如果前后轮流出现的话就是3对,如果是4个数字的话就会是4对,所以最难的是需要避开这个问题。然而排序正好解决了这个问题。

所以先排序,后哈希。O(n2)差点超时,如果两轮循环都从0开始估计要超时。官方题解中用的是visted数组来记录是否被遍历过,本质是一样的,不过要绕个弯,看起来还是比较烦躁的不是很清爽,但是时间复杂度是O(n),所以说,真佬在做题的时候不仅讲究准确,还讲究时间复杂度。