?
給你一個按?非遞減順序?排序的整數(shù)數(shù)組?nums
,返回?每個數(shù)字的平方?組成的新數(shù)組,要求也按?非遞減順序?排序。
?
class Solution:
def sortedSquares(self, nums: List[int]) -> List[int]:
n = len(nums)
ans = [0] * n
i, j, pos = 0, n - 1, n - 1
while i <= j:
if nums[i] * nums[i] > nums[j] * nums[j]:
ans[pos] = nums[i] * nums[i] # 最終結(jié)果是升序,且先放最大的。因為題目數(shù)據(jù)是山谷數(shù)組
i += 1 # 循環(huán)遍歷每個索引
else:
ans[pos] = nums[j] * nums[j]
j -= 1 # 循環(huán)遍歷每個索引
pos -= 1
return ans
?
本文摘自 :https://www.cnblogs.com/