其他分享
首页 > 其他分享> > 归并排序MergeSort

归并排序MergeSort

作者:互联网

1.有序数组的平方

双指针,选出大的放在新数组的最后。

class Solution {
    public int[] sortedSquares(int[] nums) {
        int n=nums.length;
        int[] ans=new int[n];
        int i=0,j=n-1,z=n-1;
        while(i<=j&&z>=0){
            if(nums[i]*nums[i]>=nums[j]*nums[j]){
                ans[z]=nums[i]*nums[i];
                i++;
                z--;
            }
            else if(nums[i]*nums[i]<nums[j]*nums[j]){
                ans[z]=nums[j]*nums[j];
                j--;
                z--;
            }
        }
        return ans;
    }
}

标签:MergeSort,归并,nums,int,sortedSquares,while,数组,ans,排序
来源: https://blog.csdn.net/m0_51467734/article/details/120428945