算法
数组遍历 $O(n^2)$
这实际上和C++的算法没有本质上的区别,都是先遍历数组,确定没有超出范围的数组。
接着需要准备一个列表(数组),用于确定有没有重复数字(我这里定义的名字叫checking_list)
然后再遍历一次数组,用if i in checking_list:
判断是否有重复的数字。如果没有,就把它加进checking_list
遍历完之后,如果没有重复的话,就直接return -1
Python 代码
class Solution(object):
def duplicateInArray(self, nums):
"""
:type nums: List[int]
:rtype int
"""
for i in nums:
if i < 0 or i > len(nums) - 1:return -1
checking_list = []
for i in nums:
if i in checking_list:
return i
checking_list.append(i)
return -1