【python】Leetcode每日一题-存在重复元素3
2021-06-03 17:02
阅读:458
思路1:桶排序
对于这题,我们可以以(t+1)
长度为一个桶,num/(t+1)
为桶号,则例如0、1、2、···、t
为一个号为0
的桶,-1、-2、···、-t、-(t-1)
为一个号为-1
的桶,由此利用哈希表
可以记录存在元素的桶号,同时维护哈希表长度为k
,则可以控制哈希表内元素为nums
上连续k
个元素。
在遍历nums
时,如果对于一个元素对应的桶号在哈希表内已存在,则返回True
,同时还有一种情况,因为桶容量构造为(t+1)
,可能存在相邻桶在哈希表中,如,t
与t+1
分别在0
号和1
号桶,而它们满足题设不等式关系,因此同时还需检查是否存在相邻桶以及其中元素是否满足关系,(由于需要检查其中桶号对应元素值,所有需要map
数据结构。
文章来自:搜素材网的编程语言模块,转载请注明文章出处。
文章标题:【python】Leetcode每日一题-存在重复元素3
文章链接:http://soscw.com/index.php/essay/90088.html
文章标题:【python】Leetcode每日一题-存在重复元素3
文章链接:http://soscw.com/index.php/essay/90088.html
评论
亲,登录后才可以留言!