deffind_duplication(array): ifnot array: returnFalse for i in range(len(array)): if array[i]<0or array[i]>=len(array): returnFalse for i in range(len(array)): # 循环,直到数组的值等于当前的indx while array[i] != i: if array[i] == array[array[i]]: duplication = array[i] returnTrue, duplication # 交换数组元素,注意顺序,先执行前面的,再执行后面的,反过来会出错。 array[array[i]], array[i] = array[i], array[array[i]]
returnFalse
1 2 3 4 5 6
a = [4, 2, 3, 2, 1] print(find_duplication(a)) a = [] print(find_duplication(a)) a = [4, 5, 3, 2, 1] print(find_duplication(a))