概述
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。
//双指针解法:
class Solution {
public int[] sortedSquares(int[] nums) {
int i=0,j=nums.length-1,k=nums.length;
int[] result = new int[nums.length];//定义一个新数组接收比较后的数据
while(i<=j){
if(nums[i]*nums[i]>nums[j]*nums[j]){
result[k-1]=nums[i]*nums[i];//最大的放到最后
k--;
i++;//前面的往后挪
}
else{
result[k-1]=nums[j]*nums[j];
k--;
j--;//后面的往前挪
}
}
return result;
}
}
最后
以上就是单薄西装为你收集整理的有序数组的平方的全部内容,希望文章能够帮你解决有序数组的平方所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复