941.有效的山脉数组, 增加Python, Golang实现

This commit is contained in:
yqq
2021-09-20 16:10:18 +08:00
parent 9bad94fa28
commit 0bb07f39e8

View File

@ -7,7 +7,7 @@
</p> </p>
<p align="center"><strong>欢迎大家<a href="https://mp.weixin.qq.com/s/tqCxrMEU-ajQumL1i8im9A">参与本项目</a>,贡献其他语言版本的代码,拥抱开源,让更多学习算法的小伙伴们收益!</strong></p> <p align="center"><strong>欢迎大家<a href="https://mp.weixin.qq.com/s/tqCxrMEU-ajQumL1i8im9A">参与本项目</a>,贡献其他语言版本的代码,拥抱开源,让更多学习算法的小伙伴们收益!</strong></p>
# 941.有效的山脉数组 # 941.有效的山脉数组
[力扣题目链接](https://leetcode-cn.com/problems/valid-mountain-array/) [力扣题目链接](https://leetcode-cn.com/problems/valid-mountain-array/)
@ -103,14 +103,52 @@ class Solution {
} }
``` ```
## Python ## Python3
```python ```python
class Solution:
def validMountainArray(self, arr: List[int]) -> bool:
if len(arr) < 3 :
return False
i = 1
flagIncrease = False # 上升
flagDecrease = False # 下降
while i < len(arr) and arr[i-1] < arr[i]:
flagIncrease = True
i += 1
while i < len(arr) and arr[i-1] > arr[i]:
flagDecrease = True
i += 1
return i == len(arr) and flagIncrease and flagDecrease
``` ```
## Go ## Go
```go ```go
func validMountainArray(arr []int) bool {
if len(arr) < 3 {
return false
}
i := 1
flagIncrease := false // 上升
flagDecrease := false // 下降
for ; i < len(arr) && arr[i-1] < arr[i]; i++ {
flagIncrease = true;
}
for ; i < len(arr) && arr[i-1] > arr[i]; i++ {
flagDecrease = true;
}
return i == len(arr) && flagIncrease && flagDecrease;
}
``` ```
## JavaScript ## JavaScript