剑指offer第14题:调整数组顺序使奇数位于偶数前面

来源:互联网 发布:macbook 装机必备软件 编辑:程序博客网 时间:2024/05/19 13:14

输入:一个整数数组
输出:使奇数位于偶数前面
思路:用起始两个指针,第一个指针向后移动,第二个指针向前移动,当第一个指针指向偶数第二个指针指向奇数将二者交换,直到两个指针相遇

public class ReorderOddEven{//    剑指offer第14题     public void reorderOddEven(int[] array){         int start = 0;         int end = array.length - 1;         while (start < end){             while ((array[start] & 1) == 1){                 start ++;             }             while ((array[end] & 1) == 0){                 end -- ;             }             swap(array,start,end);         }     }    private void swap(int[] array, int start, int end) {        int temp = array[start];        array[start] = array[end];        array[end] = temp;    }}
0 0