我已经开始使用LeetCode,而且我不明白为什么我的代码没有通过输入为[0](预期输出应该为1)的测试用例。
简介:给定一个数组,该数组包含从0、1、2,...,n中获取的n个不同的数字,请找到该数组中缺少的一个。
范例1:
输入:[3,0,1]输出:2
码:
class Solution:
def missingNumber(self, nums: List[int]) -> int:
largest = max(nums)
wholeList = list(range(0, largest+1))
for i in wholeList:
if wholeList[i] not in nums:
return wholeList[i]
根据您的简短介绍,返回1毫无意义,因为数组中的第一个项目为零,而最后一个项目为零(介于0和0之间),没有一个丢失。
但是你可以尝试这样的事情
class Solution:
def missingNumber(self, nums: List[int]) -> int:
largest = max(nums)
wholeList = list(range(0, largest+2))
for i in wholeList:
if wholeList[i] not in nums:
return wholeList[i]
要么
class Solution:
def missingNumber(self, nums: List[int]) -> int:
if len(nums) == 1: return nums[0] + 1
largest = max(nums)
wholeList = list(range(0, largest+1))
for i in wholeList:
if wholeList[i] not in nums:
return wholeList[i]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句