1. 題目
2. 描述
給定一個按非遞減順序排序的整數數組
A
,返回每個數字的平方組成的新數組,要求也按非遞減順序排序。示例 1:
輸入: [-4,-1,0,3,10]
輸出: [0,1,9,16,100]
示例 2:
輸入: [-7,-3,2,3,11]
輸出: [4,9,9,49,121]
3. 思路
遍歷數組,然後將數組元素的平方存入一個新的數組中,然後返回排序後的數組即可,主要操作是遍歷()和排序(),最後時間複雜度爲 .
4. 實現
public int[] sortedSquares(int[] A) {
// 聲明一個 A 的等長數組用於存放平方結果
int[] result = new int[A.length];
// 遍歷數組,將其元素的平方存到 result 中
for (int i = 0; i < A.length; i++) {
result[i] = A[i] * A[i];
}
// 數組排序
Arrays.sort(result);
return result;
}