题目一:找出数组中重复的数字
长度为n的数组里所有数字都在0~n-1的范围内。请找出数组中任意一个重复的数字。
比如{2,3,1,0,2,5,3},那么对应输出的重复的数字是2或者3
思路:
一次扫描数组,判断下标为i的数字是否等于i,如果是,接着扫描下一个,如果不是,拿它跟第m个数字进行比较。如果它和m个数字相等,就找到了一个重复的数字,如果不相等,就把第i个数字和第M个数字交换,把m放到属于他的位置。重复以上过程,直到找到一个重复的数字。
python代码:
def duplicate(nums):
if nums == None or len(nums)