我希望对数组中的一些元素进行排序,但排除其他元素。
以一个包含整数的简单示例为例,我想对奇数进行排序,而将偶数保留在原地。
到目前为止,我有以下代码:
public class MyClass {
public static void main(String args[]) {
int temp;
int array[] = {5, 3, 2, 8, 1, 4};
int[] sortedArray = new int[array.length];
for (int j = 0; j < array.length - 1; j++) {
for (int x = 0; x < array.length - 1; x++) {
if (array[x] > array[x + 1] && array[x] % 2 != 0 && array[x + 1] % 2 !=0) {
temp = array[x];
array[x] = array[x + 1];
array[x + 1] = temp;
sortedArray = array;
}
}
}
for (int i: sortedArray) {
System.out.println(i);
}
}
}
给定整数数组: 5,3,2,8,1,4
代码输出结果为: 3,5,2,8,1,4
期望输出结果为: 1,3,2,8,5,4
无法确定在原始数组中,一个更小的奇数数值是否排在一个偶数数值之前需要满足什么逻辑条件。