专栏首页数据分析与挖掘【python-leetcode977-双指针】有序数组的平方

【python-leetcode977-双指针】有序数组的平方

问题描述:

给定一个按非递减顺序排序的整数数组 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:
    def sortedSquares(self, A: List[int]) -> List[int]:
        #左指针
        left = 0
        #右指针
        right = len(A)-1
        #用于存储结果
        res =  [0 for _ in range(len(A))]
        #从右至左遍历数组
        for i in range(len(A)-1,-1,-1):
            #计算左指针指向值得平方
            l = A[left]*A[left]
            #计算右指针指向值得平方
            r = A[right]*A[right]
            #如果l<=r
            if l <= r:
                #将res的第i位更新为r
                res[i] = r
                #因为是非递键排序的,所以剩下的值都会比该值小了,此时右指针减一
                right -= 1
            else:
                res[i] = l
                left += 1
        return res

结果:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【python-双指针】pair with target sum

    给定一个有序数组和一个目标和,在数组中找到一对和等于给定目标的数组,有就返回下标,没有就返回[-1,-1]。

    绝命生
  • 【python-树的宽度遍历】二叉树的反向层次遍历

    绝命生
  • 【自然语言处理】双语数据预处理

    由于数字、日期、时间、网址等不可枚举,无法通过词典简单查找来分词。可以采用正则表达式或者自动机进行自动识别,并给予特殊名字进行泛化。例如:

    绝命生
  • 大佬的快速排序算法,果然不一样

    快速排序,正如它的名字所体现,是在实践中已知的最快的排序算法,平均运行时间为O(NlogN),最坏的运行时间为O(N^2)。算法的基本思想很简单,然而想要写出一...

    IT大咖说
  • 快速排序你真的会了吗?

    正如它的名字所体现,快速排序是在实践中最快的已知排序算法,平均运行时间为O(NlogN),最坏的运行时间为O(N^2)。算法的基本思想很简单,然而想要写出一个高...

    编程珠玑
  • React Native iOS 剖析 WebView && 解决 Error loading page Domain: WebKitErrorDomain Error Code: 101 The U

    今天在对接一个网页时加载网页总是碰到 Error loading page Domain: WebKitErrorDomain Error Code: 101...

    onety码生
  • excel导入与导出

    基本上导出的文件分为两种: 1:类Excel格式,这个其实不是传统意义上的Excel文件,只是因为Excel的兼容能力强,能够正确打开而已。修改这种文件后再保存...

    joshua317
  • Anaconda下安装Scrapy

    钱塘小甲子
  • 碎片化时代,找准你的增长飞轮

    飞轮效应是一个不复杂但高回报的理论,好的飞轮可以带来指数增长。很多人用飞轮效应解读万事开头难与坚持。而我认为,飞轮效应的价值在于系统思考。它用隐喻的方式将长期效...

    ThoughtWorks
  • 10 个省时间的 PyCharm 技巧,提升工作效率,杠杠滴!

    写 Python 代码时,你会严格遵守 pep8 规范么?还是要遵守的,不然代码传到 github 或者知乎上被人怼就不好了。但是如果靠肉眼去检查和注意的话,太...

    昱良

扫码关注云+社区

领取腾讯云代金券