每日一题 - 简单 - 丢失的数字(268)

45 阅读1分钟

题目:给定一个包含 [0, n]中 n 个数的数组 nums,找出 [0, n]这个范围内没有出现在数组中的那个数。

示例 1:

输入:nums = [3,0,1]
输出:2
解释:n = 3,因为有 3 个数字,所以所有的数字都在范围 [0,3] 内。2 是丢失的数字,因为它没有出现在 nums 中。

🙇‍♂️ 感想: 这是一道很简单的数组类型的题目,题目也清晰易懂

🙇‍♂️ 解题思路: 先将数组排序,然后遍历数组,如果数组元素不等于当前下标, 那么缺失的就是当前下标的值

function missingNumber(nums: number[]): number {
  nums.sort((a, b) => a - b)
  for (let i = 0; i < nums.length; i++) {
    if (nums[i] !== i) {
      return i
    }
  }
  return nums.length
};