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
相关推荐
测试199820 分钟前
软件测试之压力测试
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·压力测试
Swizard24 分钟前
极限瘦身:将 Python AI 应用从 100MB 砍到 30MB
java·python·ai·移动开发
亮子AI26 分钟前
【Tiptap】如何使用 ordered list?
数据结构·list·tiptap
南莺莺29 分钟前
二叉排序树的创建和基本操作---C++实现
数据结构·c++·算法··二叉排序树
编织幻境的妖30 分钟前
Python代码性能优化工具与方法
开发语言·python·性能优化
仰泳的熊猫32 分钟前
1061 Dating
数据结构·c++·算法·pat考试
Fcy64832 分钟前
二叉搜索树(C++实现)
开发语言·数据结构·c++·二叉搜索树
CoderYanger36 分钟前
A.每日一题——1523. 在区间范围内统计奇数数目
java·数据结构·算法·leetcode·职场和发展
surtr143 分钟前
Round 1019(div2) CD
数据结构·c++·算法·贪心算法·stl
Rookie_JE1 小时前
python docxtpl库学习
python