Leetcode刷题笔记python---缺失数字

缺失数字

题目

给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。

示例 1:

输入: [3,0,1]
输出: 2
示例 2:

输入: [9,6,4,2,3,5,7,0,1]
输出: 8
说明:
你的算法应具有线性时间复杂度。你能否仅使用额外常数空间来实现?


解答

思路:

  1. 遍历
  2. not in

结果:时间太长

  1. 找特点
  2. 加总,求差

代码:

class Solution:
    def missingNumber(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        n=len(nums)
        res=n*(n+1)/2-sum(nums)
        return int(res)

结果:89%

猜你喜欢

转载自blog.csdn.net/sinat_29350597/article/details/82967212