给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。
示例 1:
输入:[-4,-1,0,3,10]
输出:[0,1,9,16,100]
示例 2:
输入:[-7,-3,2,3,11]
输出:[4,9,9,49,121]
提示:
1 <= A.length <= 10000
-10000 <= A[i] <= 10000
A 已按非递减顺序排序。
思路:
直接原地平方, 然后排序.
题解:
class Solution {
public int[] sortedSquares(int[] A) {
for(int i=0; i<A.length; i++){
A[i]*=A[i];
}
// int temp = 0;
// for(int i=A.length-1; i>=0; i--){
// for(int j=0; j<=i-1; j++){
// if(A[j]>A[j+1]){
// temp=A[j];
// A[j]=A[j+1];
// A[j+1]=temp;
// }
// }
// }
Arrays.sort(A);
return A;
}
}