【Leetcode 217】 存在重复元素——竟然不给用api!!

53 阅读1分钟

给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。

示例 1:

输入: nums = [1,2,3,1]
输出: true

示例 2:

输入: nums = [1,2,3,4]
输出: false

示例 3:

输入: nums = [1,1,1,3,3,4,3,2,4,2]
输出: true

提示:

  • 1 <= nums.length <= 105
  • -109 <= nums[i] <= 109
function containsDuplicate(nums: number[]): boolean {
  const numSet = new Set();
  return nums.some((num) => {
    if (numSet.has(num)) return true;
    numSet.add(num);
    return false;
  });
}

但是,算法不给用api

function containsDuplicate(nums: number[]): boolean {
  const numSet = new Set();
  for (const num of nums) {
    if (numSet.has(num)) return true;
    numSet.add(num);
  }
  return false;
}