java-将数组调整为左奇右偶

先将偶数个数找出来
然后将奇数偶数分别保存到数组
然后写入
时间复杂度为O(n);

public class test{
public static void main(String[] args){
int A[]= {8,1,2,3};
int t=0,tt=0,tt2=0;
for(int i:A) { //先找出偶数个数
if(i%20) t++;
}
int c[]=new int[t];int d[]=new int[A.length-t];
for(int i:A) { //将奇数偶数分别保存到两个数组里
if(i%2
0) {
c[tt]=i;tt++;
}else {
d[tt2]=i;tt2++;
}
}
tt=0;
for(int i=0;i<d.length;i++) { //重新写入
A[i]=d[i];tt++;
}
for(int i=0;i<t;i++) { //写入偶数
A[tt++]=c[i];
}
for(int i:A) { //输出
System.out.print(i+" ");
}
}
}

posted @ 2020-11-20 12:40  林伊轩  阅读(245)  评论(0)    收藏  举报