首页 > 试题广场 >

平方升序数组

[编程题]平方升序数组
  • 热度指数:1249 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个长度为 n 的升序数组 nums ,请你算出这个数组中所有数的平方组成的新的数组,要求也按照升序。

数据范围: ,数组中的数都满足
示例1

输入

[1,0,1,2,3]

输出

[0,1,1,4,9]
示例2

输入

[5,4,3,2,1]

输出

[1,4,9,16,25]
class Solution:
    def sortedArray(self , nums: List[int]):
        a,b=0,len(nums)
        a1,c=b-1,b-1
        res=[float('inf')]*b
        while c>=0:
         if nums[a]*nums[a]< nums[a1]*nums[a1] :
            res[c]=nums[a1]*nums[a1]
            a1-=1
         else:
            res[c]=nums[a]*nums[a]
            a+=1
         c-=1

        return res
编辑于 2024-02-15 23:16:59 回复(0)
记得把第三行注释掉
class Solution:
    def sortedArray(self , nums: List[int]) -> List[int]:
        # write code here
        news=[]
        for i in nums:
            news.append(pow(i,2))
        news.sort()
        return news
发表于 2023-08-21 21:36:46 回复(0)

问题信息

难度:
2条回答 2124浏览

热门推荐

通过挑战的用户

查看代码