leetcode:268. 丢失的数字(python3解法)

难度:简单

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

示例 1:

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

示例 2:

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

示例 3:

复制代码
输入:nums = [9,6,4,2,3,5,7,0,1]
输出:8
解释:n = 9,因为有 9 个数字,所以所有的数字都在范围 [0,9] 内。8 是丢失的数字,因为它没有出现在 nums 中。

示例 4:

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

提示:

  • n == nums.length
  • 1 <= n <= 104
  • 0 <= nums[i] <= n
  • nums 中的所有数字都 独一无二

**进阶:**你能否实现线性时间复杂度、仅使用额外常数空间的算法解决此问题?

题解:

python 复制代码
class Solution:
    def missingNumber(self, nums: List[int]) -> int:
        n = len(nums)
        mid_res = []
        for i in range(n+1):
            mid_res.append(i)
        for j in mid_res:
            if j not in nums:
                return j
相关推荐
biter down1 天前
从 0 到 1 搭建 Python 接口自动化测试框架(博客系统实战)
开发语言·python
小欣加油1 天前
leetcode56 合并区间
c++·算法·leetcode·职场和发展
lqqjuly1 天前
前沿算法深度解析(二)
人工智能·算法·机器学习
肖永威1 天前
Python多业务并行计算框架插件化演进:从硬编码到动态注册
python·插件化·并行计算·动态注册
yz_aiks1 天前
Linux Jar包配置Systemd自启动实战:从排查到配置全流程
linux·python·jar·自启动·systemd
徐小夕1 天前
万字长文!千万级文档 RAG 知识库系统落地实践
前端·算法·github
不知名的老吴1 天前
线程的生命周期之线程“插队“
java·开发语言·python
akunkuntaimei1 天前
2026年高考数学各省真题及答案(完整版)
算法·高考
Hello:CodeWorld1 天前
C 风格变参 vs C++ 变参模板:核心区别与选型指南
c语言·c++·算法
xsc6996751 天前
从零搭建大模型与智能体平台 - 完整技术详解
python