File tree 4 files changed +73
-4
lines changed
solution/0800-0899/0896.Monotonic Array
4 files changed +73
-4
lines changed Original file line number Diff line number Diff line change 59
59
60
60
<!-- 这里可写通用的实现逻辑 -->
61
61
62
+ 遍历数组:
63
+
64
+ - 出现递减,将 ` increase ` 置为 ` false ` ;
65
+ - 出现递增,将 ` decrease ` 置为 ` false ` ;
66
+ - 既非递增也非递减,提前返回 ` false ` ;
67
+ - 遍历结束,若出现递增或递减,返回 ` true ` 。
68
+
62
69
<!-- tabs:start -->
63
70
64
71
### ** Python3**
65
72
66
73
<!-- 这里可写当前语言的特殊实现逻辑 -->
67
74
68
75
``` python
69
-
76
+ class Solution :
77
+ def isMonotonic (self , A : List[int ]) -> bool :
78
+ increase = decrease = True
79
+ for i in range (1 , len (A)):
80
+ if not increase and not decrease:
81
+ return False
82
+ if A[i] < A[i - 1 ]:
83
+ increase = False
84
+ elif A[i] > A[i - 1 ]:
85
+ decrease = False
86
+ return increase or decrease
70
87
```
71
88
72
89
### ** Java**
73
90
74
91
<!-- 这里可写当前语言的特殊实现逻辑 -->
75
92
76
93
``` java
77
-
94
+ class Solution {
95
+ public boolean isMonotonic (int [] A ) {
96
+ boolean increase = true , decrease = true ;
97
+ for (int i = 1 , n = A . length; i < n; ++ i) {
98
+ if (! increase && ! decrease) return false ;
99
+ if (A [i] < A [i - 1 ]) decrease = false ;
100
+ else if (A [i] > A [i - 1 ]) increase = false ;
101
+ }
102
+ return increase || decrease;
103
+ }
104
+ }
78
105
```
79
106
80
107
### ** ...**
Original file line number Diff line number Diff line change 102
102
### ** Python3**
103
103
104
104
``` python
105
-
105
+ class Solution :
106
+ def isMonotonic (self , A : List[int ]) -> bool :
107
+ increase = decrease = True
108
+ for i in range (1 , len (A)):
109
+ if not increase and not decrease:
110
+ return False
111
+ if A[i] < A[i - 1 ]:
112
+ increase = False
113
+ elif A[i] > A[i - 1 ]:
114
+ decrease = False
115
+ return increase or decrease
106
116
```
107
117
108
118
### ** Java**
109
119
110
120
``` java
111
-
121
+ class Solution {
122
+ public boolean isMonotonic (int [] A ) {
123
+ boolean increase = true , decrease = true ;
124
+ for (int i = 1 , n = A . length; i < n; ++ i) {
125
+ if (! increase && ! decrease) return false ;
126
+ if (A [i] < A [i - 1 ]) decrease = false ;
127
+ else if (A [i] > A [i - 1 ]) increase = false ;
128
+ }
129
+ return increase || decrease;
130
+ }
131
+ }
112
132
```
113
133
114
134
### ** ...**
Original file line number Diff line number Diff line change
1
+ class Solution {
2
+ public boolean isMonotonic (int [] A ) {
3
+ boolean increase = true , decrease = true ;
4
+ for (int i = 1 , n = A .length ; i < n ; ++i ) {
5
+ if (!increase && !decrease ) return false ;
6
+ if (A [i ] < A [i - 1 ]) decrease = false ;
7
+ else if (A [i ] > A [i - 1 ]) increase = false ;
8
+ }
9
+ return increase || decrease ;
10
+ }
11
+ }
Original file line number Diff line number Diff line change
1
+ class Solution :
2
+ def isMonotonic (self , A : List [int ]) -> bool :
3
+ increase = decrease = True
4
+ for i in range (1 , len (A )):
5
+ if not increase and not decrease :
6
+ return False
7
+ if A [i ] < A [i - 1 ]:
8
+ increase = False
9
+ elif A [i ] > A [i - 1 ]:
10
+ decrease = False
11
+ return increase or decrease
You can’t perform that action at this time.
0 commit comments