题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。

代码实现:
public class Solution{ public static void reorder(int[] arr){ if(arr==null||arr.length==0){ return; } int begin=0; int end=arr.length-1; while(begin<end){ while(begin<end&&!isEven(arr[begin])){ begin++; } while(begin<end&&isEven(arr[end])){ end--; } if(begin<end){ int temp=arr[begin]; arr[begin]=arr[end]; arr[end]=temp; } } } public static boolean isEven(int n){ return (n&1)==0?true:false; //n&1==0判断n是否是偶数 } public static void main(String[] args){ int[] array={1,2,3,4,5}; reorder(array); for(int i:array){ System.out.print(i+" "); } } }
posted on
浙公网安备 33010602011771号