1.创建数组,(忘了)
int n=nums.size();
vector<int> newnums(n);
直接用vector
2.双指针
前后指针在一个循环中,分别挪动实现双循环的效果
class Solution {
public:
vector<int> sortedSquares(vector<int>& nums) {
int n=nums.size();
vector<int> newnums(n);
for(int i=0,k=n-1,t=n-1;i<=k;)
{
if(nums[i]*nums[i]<nums[k]*nums[k]){
newnums[t]=nums[k]*nums[k];
k--;
}
else{
newnums[t]=nums[i]*nums[i];
i++;
}
t--;
}
return newnums;
}
};