剑指offer23题:调整数组顺序使得奇数位于偶数前面

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

  • 思路:个人思路,设置两个指针,一个从前往后,一个从后往前,然后找到在前列的第一个奇数和在后面的第一个偶数,然后二者互换。
public class ReordOddEven {
    public void Record(int[] arr){
        if(arr.length==0) return ;
        int start = 0;
        int end = arr.length-1;
        while(start>1==0) end--;
            while(start>1!=0) start++;
            if(start
  • 更好的做法是将判断奇偶性解耦出来,这样同类型的题目都能使用相同的方法处理
public class ReordOddEven {
    public void Record(int[] arr){
        if(arr.length==0) return ;
        int start = 0;
        int end = arr.length-1;
        while(start>1==0) return true ;
         else  return false;
    }

}

你可能感兴趣的:(剑指offer23题:调整数组顺序使得奇数位于偶数前面)