三天打鱼,两天晒网,今天是打鱼的日子

142 阅读1分钟

差的绝对值为 K 的数对数目

0209.png

贴一下代码

function countKDifference(nums: number[], k: number): number {
    let count = 0;
    for(let i = 0; i < nums.length - 1; i++){
        for(let j = i; j < nums.length; j++){
            if(Math.abs(nums[i] - nums[j]) == k){
                count += 1
            }
        }
    }
    return count;
};

思路:

  • 要求返回|nums[i] - nums[j]| == k条件成立的个数,即数组内任意两项相减使条件成立。这里用了双重for循环,两两相减比较,符合条件就在返回计数上加一。
  • Math.abs(): 内置方法,返回传入number的绝对值,这里使用刚好合适