Study Plan For Algorithms - Part30

1. 0 ~ n-1中缺失的数字

一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0 ~ n-1之内。在范围0 ~ n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。
方法一:

复制代码
def missingNumber(nums):
    i = 0
    j = len(nums) - 1
    while i <= j:
        m = (i + j) // 2
        if nums[m] == m:
            i = m + 1
        else:
            j = m - 1
    return i

方法二:

复制代码
def missingNumber(nums):
    nums.sort()
    for i, num in enumerate(nums):
        if num!= i:
            return i
    return len(nums)

方法三:

复制代码
def missingNumber(nums):
    n = len(nums)
    expected_sum = n * (n + 1) // 2
    actual_sum = sum(nums)
    return expected_sum - actual_sum
相关推荐
深蓝海拓1 分钟前
PySide6从0开始学习的笔记(十三) IDE的选择
笔记·python·qt·学习·pyqt
jingfeng51413 分钟前
哈希表的概念+实现
数据结构·哈希算法·散列表
剪一朵云爱着13 分钟前
PAT 1091 Acute Stroke
算法·pat考试
智算菩萨16 分钟前
实战:用 Python + 传统NLP 自动总结长文章
开发语言·人工智能·python
子夜江寒16 分钟前
基于 Python 库使用贝叶斯算法与逻辑森林
开发语言·python·算法
BBB努力学习程序设计20 分钟前
掌握Python中不可变对象与可变对象的深度解析
python·pycharm
whitelbwwww21 分钟前
Pytorch--张量表示实际数据
人工智能·pytorch·python
写文章的大米23 分钟前
10分钟用Python搭个接口,还能自动生成文档?
python·fastapi
君义_noip41 分钟前
信息学奥赛一本通 1615:【例 1】序列的第 k 个数
c++·算法·信息学奥赛·csp-s
ホロHoro42 分钟前
数据结构非线性部分(1)
java·数据结构·算法