【LeetCode-简单题】977. 有序数组的平方

文章目录

题目

方法一:双指针

java 复制代码
class Solution {
// 方法一 :双指针
    public int[] sortedSquares(int[] nums) {
      int left = 0;
      int right = nums.length -1 ;
      int[] res = new int[nums.length];//结果集新数组  长度为老数组长度
      for(int i = nums.length-1 ; i>=0 ;i--){
          int l = nums[left]*nums[left];
          int r = nums[right]*nums[right];
          if( l > r ){//若左边的值 大于 右边的值 ,让左边的值坐在最后面,然后移动左指针往后
              res[i] = l;
              left++;
          }else {//若左边的值 <= 右边的值 ,让右边的值坐在当前最后面,然后移动右指针往前
               res[i] = r;
             right--;
          }
      }
      return res;
    }
   
}

方法二:

相关推荐
uzong2 小时前
程序员从大厂回重庆工作一年
java·后端·面试
kyle~2 小时前
C++---value_type 解决泛型编程中的类型信息获取问题
java·开发语言·c++
开心香辣派小星6 小时前
23种设计模式-15解释器模式
java·设计模式·解释器模式
风筝在晴天搁浅6 小时前
代码随想录 718.最长重复子数组
算法
kyle~6 小时前
算法---回溯算法
算法
Halo_tjn6 小时前
虚拟机相关实验概述
java·开发语言·windows·计算机
star _chen6 小时前
C++实现完美洗牌算法
开发语言·c++·算法
hzxxxxxxx6 小时前
1234567
算法
摆烂z6 小时前
Docker与Jib(maven插件版)实战
java
RainbowSea7 小时前
从 Spring Boot 2.x 到 3.5.x + JDK21:一次完整的生产环境迁移实战
java·spring boot·后端