LeetCode 面试题 16.16. 部分排序
题目描述
思路分析
思路描述
参考代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
func subSort(nums []int) []int {
n := len(nums)
if n <= 0 {
return []int{-1, -1}
}
maxVal := nums[0]
right := -1
for i := 0; i < n; i++ {
if nums[i] >= maxVal {
maxVal = nums[i]
} else {
right = i
}
}
if right == -1 {
return []int{-1, -1}
}
minVal := nums[n-1]
left := -1
for i := n - 1; i >= 0; i-- {
if nums[i] <= minVal {
minVal = nums[i]
} else {
left = i
}
}
return []int{left, right}
}
1
write your code here
1
write your code here
CC BY-NC-SA 4.0
许可协议,转载请注明出处!
本博客所有文章除特别声明外,均采用