数组特点
数组是有序的,由负到正
思想
双指针,从两端开始遍历,额外申请空间,存放最终结果。
class Solution {
public:
vector<int> sortedSquares(vector<int>& A) {
vector<int> ans(A.size(), 0);
int left = 0;
int right = A.size() - 1;
int k = A.size() - 1;
while (left < right) {
if (abs(A[left]) <= abs(A[right])) {
ans[k--] = A[right]*A[right];
right--;
}
else {
ans[k--] = A[left]* A[left];
left++;
}
}
return ans;
}
};