全部平方了再排序即可。
c++实现
class Solution {
public:
vector<int> sortedArray(vector<int>& nums) {
for(int i=0; i<nums.size(); i++){
nums[i] = nums[i] * nums[i];
}
sort(nums.begin(), nums.end());
return nums;
}
};
python实现
//方法一
class Solution:
def sortedArray(self , nums: List[int]) -> List[int]:
return sorted(num*num for num in nums)
//方法二
class Solution:
def f(self, num):
return num ** 2
def sortedArray(self , nums: List[int]) -> List[int]:
result = list(map(self.f, nums))
return sorted(result)