leetcode977. 有序数组的平方

举报
兔老大 发表于 2021/04/23 23:40:28 2021/04/23
【摘要】 给定一个按非递减顺序排序的整数数组 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 -10...

给定一个按非递减顺序排序的整数数组 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 已按非递减顺序排序。

思路:双指针判断谁的平方更大,填答案即可。


  
  1. class Solution {
  2. public int[] sortedSquares(int[] A) {
  3. int len=A.length;
  4. int[] ans=new int[len];
  5. int left=0;
  6. int right=len-1;
  7. for(int i=len-1;i>=0;i--){
  8. if(A[left]*A[left]>A[right]*A[right]){
  9. ans[i]=A[left]*A[left];
  10. left++;
  11. }else{
  12. ans[i]=A[right]*A[right];
  13. right--;
  14. }
  15. }
  16. return ans;
  17. }
  18. }

 

文章来源: fantianzuo.blog.csdn.net,作者:兔老大RabbitMQ,版权归原作者所有,如需转载,请联系作者。

原文链接:fantianzuo.blog.csdn.net/article/details/104186245

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。