如何快速判断数组是否是连续的?

秘密课程 2024-03-04 04:48:22

判断数组是否是连续的列表中的数字是从小到大的、必须满足数组的最大值减去数组的最小值等于数组的总数量减去一。

公式: max(x) - min(x) == len(x) - 1

我们可以设计一个函数,这个函数需要两个参数,即数组和数组的总数量。

def isContinuous(arr, n): min = -1 max = -1 for j in range(0,n): if arr[j] != 0: if min > arr[j] or min == -1: min = arr[j] if max < arr[j] or max == -1: max = arr[j] if max - min > n - 1: return False else: return Truearr = [1,2,3,4]n = len(arr)continuous = isContinuous(arr,n)

arr = [1,4,3,5]n = len(arr)continuous = isContinuous(arr,n)

数值相关的算法很多,比如排序、二分查找、比较最大值、最小值等。需要慢慢不断的学习和巩固,日常开发中用的最多就是排序、查找、数组是连续还是离散的。

0 阅读:0