leecode977有序数组的平方——手写详解
代码
手写详解
第一次代码(一遍过)
package 数组;
import java.util.Scanner;
public class 有序数组的平方977 {
public static void main(String[] args) {
int n;
Scanner input = new Scanner(System.in);
System.out.println("请输入数组的长度");
n=input.nextInt();
int[] num = new int[n];
System.out.println("按照递增的顺序输入数组的元素");
for (int i = 0; i < num.length; i++) {
num[i]= input.nextInt();
}
int[] inspection = sortedSquares(num);
for (int a:inspection) {
System.out.println(a);
}
}
public static int[] sortedSquares(int[] nums) {
int[] temp = new int[nums.length];
int F,NF;
int i;
for (i = 0; i < nums.length; i++) {
if(nums[i]>=0){
break;
}
}
NF=i;
F=i-1;
for(i=0;i<temp.length;i++){
if(NF!=nums.length&&F>=0){
if(nums[NF]*nums[NF]>nums[F]*nums[F]){
temp[i]=nums[F]*nums[F];
F--;
}else{
temp[i]=nums[NF]*nums[NF];
NF++;
}
}else if(F<0){
temp[i]=nums[NF]*nums[NF];
NF++;
}else if(NF==nums.length){
temp[i]=nums[F]*nums[F];
F--;
}
}
return temp;
}
}
本文作者:TranquilGlow
本文链接:https://www.cnblogs.com/xuehaiqiule/p/17621642.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步