热门

最新

红包

立Flag

投票

同城

我的

发布
m0_55990500
互联网底层人员
4 年前
truem0_55990500

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),所以说,真佬在做题的时候不仅讲究准确,还讲究时间复杂度。

CSDN App 扫码分享
分享
评论
4
打赏
  • 复制链接
  • 举报
下一条:
不小心就开了四年会员,可能要开始一波文农生活了
立即登录