# LeetCode 896. Monotonic Array

## Description

https://leetcode.com/problems/monotonic-array/

An array is monotonic if it is either monotone increasing or monotone decreasing.

An array A is monotone increasing if for all i <= jA[i] <= A[j].  An array A is monotone decreasing if for all i <= jA[i] >= A[j].

Return true if and only if the given array A is monotonic.

Example 1:

Input: [1,2,2,3]
Output: true

Example 2:

Input: [6,5,4,4]
Output: true

Example 3:

Input: [1,3,2]
Output: false

Example 4:

Input: [1,2,4,5]
Output: true

Example 5:

Input: [1,1,1]
Output: true

## Explanation

Check if array is in either ascending or descending order.

## Python Solution

class Solution:
def isMonotonic(self, A: List[int]) -> bool:

is_ascending = True

prev = None
for num in A:
if prev != None and num < prev:
is_ascending = False

prev = num

if is_ascending:
return True

is_descending = True
prev = None

for num in A:
if prev != None and num > prev:
print (num, prev)
is_descending = False
return False

prev = num

return is_descending

• Time Complexity: O(N).
• Space Complexity: O(1).