📅  最后修改于: 2023-12-03 14:46:46.749000             🧑  作者: Mango
本程序用于检查给定的数组是否单调(单调增或单调减)。程序通过遍历数组,比较相邻元素的大小关系,以确定数组的单调性。
以下是本程序的实现步骤:
is_monotonic
的函数,该函数接受一个参数 arr
,表示待检查的数组。is_increasing
和 is_decreasing
,初始值均为 True
,表示假设数组是单调增的或单调减的。is_increasing
设为 False
;is_decreasing
设为 False
;is_increasing
和 is_decreasing
都为 False
,表示数组不单调,可以提前结束遍历。is_increasing
或 is_decreasing
,表示数组是否单调。代码如下:
def is_monotonic(arr):
is_increasing = True
is_decreasing = True
for i in range(1, len(arr)):
if arr[i] < arr[i-1]:
is_increasing = False
if arr[i] > arr[i-1]:
is_decreasing = False
if not is_increasing and not is_decreasing:
break
return is_increasing or is_decreasing
以下是本程序的使用示例:
arr1 = [1, 2, 3, 4, 5]
arr2 = [5, 4, 3, 2, 1]
arr3 = [1, 2, 3, 2, 1]
print(is_monotonic(arr1)) # True
print(is_monotonic(arr2)) # True
print(is_monotonic(arr3)) # False
本程序通过遍历数组,比较相邻元素的大小关系,实现了检查给定数组是否单调的功能。程序简单易懂,适用于小规模的数据集。