任意输出一个数组,然后将数字分别按奇偶数分类,其中奇数从小到大排序,偶数从大到小排序,接着奇偶两个数组交叉输出,并且第一个输出的必须是奇数。
当奇偶数组有一个数组输出完,就把另一个数组剩下的数字直接输出。
例如输入0 3 6 9 15 47 24输出为3 24 9 6 15 0 47
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] a = new int[n];
for (int i = 0; i < n; i++)
a[i] = in.nextInt();
Arrays.sort(a);
int m = 0, z = 0;
for (int i = 0; i < n; i++) {
for (int j = m; j < n; j++) {
if (a[j] % 2 != 0 && a[j] != 0) {
System.out.print(a[j] + "\t");
m = j+1;
break;
}
}
for (int j = z; j < n; j++)
if (a[n - 1 - j] % 2 == 0) {
System.out.print(a[n - 1 - j] + "\t");
z = j+1;
break;
}
}