常规 1
func sortedSquares(_ nums: [Int]) -> [Int] {
var squaed: [Int] = []
for num in nums {
squaed.append(num * num)
}
squaed.sort()
return squaed
}
双指针
func sortedSquares(_ nums: [Int]) -> [Int] {
var n = nums.count - 1
var squaed = Array<Int>(repeating: -1, count: nums.count)
var j = nums.count - 1
var i = 0
for _ in 0..< nums.count{
if nums[i] * nums[i ] < nums[j] * nums[j] {
squaed[n] = nums[j] * nums[j]
j -= 1
} else {
squaed[n] = nums[i] * nums[i]
i += 1
}
n -= 1
}
return squaed
}