LeetCode 977. 有序数组的平方
题目描述
思路分析
双指针
参考代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
func sortedSquares(nums []int) []int {
var res []int
left, right := 0, len(nums)-1
for left <= right {
leftSquare := nums[left] * nums[left]
rightSquare := nums[right] * nums[right]
if leftSquare > rightSquare {
res = append([]int{leftSquare}, res...)
left++
} else {
res = append([]int{rightSquare}, res...)
right--
}
}
return res
}
- 时间复杂度:O(n),其中 n 是数组的长度。
- 空间复杂度:O(n),我们使用了一个新的结果数组存储每个数字的平方。
1
write your code here
CC BY-NC-SA 4.0
许可协议,转载请注明出处!
本博客所有文章除特别声明外,均采用