int* sortedSquares(int* nums, int numsSize, int* returnSize) {
*returnSize = numsSize;
//很奇怪,题目也没说。为啥没有这个,在网站上就AC不了了呢
//是不是说返回一个数组一定要返回它的大小(似乎确实是这样的,
//不然只返回一个指针,不知道它多大,那么就称不上数组啦)
int* ans = (int*) malloc(sizeof(int)*numsSize);
int left=0,right=numsSize-1,j;
for(j=numsSize-1;j>=0;j--) {
int left2, right2;
left2 = nums[left] * nums[left];
right2 = nums[right] * nums[right];
if(right2>=left2){
ans[j]=right2;
right--;
}
else{
ans[j]=left2;
left++;
}
}
return ans;
}
leetcode-977有序数组的平方
最新推荐文章于 2024-06-20 21:23:57 发布