1.第K个缺失的正整数
题目:
给你一个 严格升序排列 的正整数数组 arr
和一个整数 k
。
请你找到这个数组里第 k
个缺失的正整数。
思路:用一个变量递增,一个变量记录缺失的整数数量,对数组遍历,如果两个数不相等说明缺失。
/**
* @param {number[]} arr
* @param {number} k
* @return {number}
*/
var findKthPositive = function(arr, k) {
let v = 0;
let c = 0;
let i = 0;
while (c < k) {
if (arr[i] !== ++v) {
c++;
} else {
i++;
}
}
return v;
};
2.重复至少K次且长度为M的模式
题目:
给你一个正整数数组 arr
,请你找出一个长度为 m
且在数组中至少重复 k
次的模式。
模式 是由一个或多个值组成的子数组(连续的子序列),连续 重复多次但 不重叠 。 模式由其长度和重复次数定义。
如果数组中存在至少重复 k
次且长度为 m
的模式,则返回 true
,否则返回