文章目录
- 题目
- 方法一:双指针
- 方法二:
题目
方法一:双指针
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;}}