977. 有序数组的平方(Python)

Python07

977. 有序数组的平方(Python),第1张

更多精彩内容,请关注 【力扣简单题】 。

难度:★☆☆☆☆

类型:数组

给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。

提示

1 <= A.length <= 10000

-10000 <= A[i] <= 10000

A 已按非递减顺序排序。

示例 1

输入:[-4,-1,0,3,10]

输出:[0,1,9,16,100]

示例 2

输入:[-7,-3,2,3,11]

输出:[4,9,9,49,121]

我们对输入数组中每个元素进行平方,然后对结果进行数组进行排序即可。

(参考官方解答)

我们可以使用两个指针分别读取数组的非负部分与负数部分 —— 指针 i 反向读取负数部分,指针 j 正向读取非负数部分。

那么,现在我们就在使用两个指针分别读取两个递增的数组了(按元素的平方排序)。接下来,我们可以使用双指针的技巧合并这两个数组。

如有疑问或建议,欢迎评论区留言~

利用input()函数获取一个数字a,a=input("请输入数字:")。

而Python专用的科学计算扩展库就更多了,例如如下3个十分经典的科学计算扩展库:NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。

由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。

例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。

求平方和的办法

aa = [.....] #自己加数据进去

result = sum([c*c for c in aa])

两个数据顺序相乘

aa = []

bb = []

cc =[a*b for a,b in  zip(aa,bb)]