美文网首页
数组基数偶数位置互换

数组基数偶数位置互换

作者: 冉桓彬 | 来源:发表于2020-03-02 10:03 被阅读0次

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

public static void reorder(int[] arr) {
    if (arr == null || arr.length < 2) {
        return;
    } 
    int start = 0;
    int end = arr.length - 1;
    while (start < end) {
        // 找奇数
        while (start < end && arr[start] % 2 != 0) {
            start++;
        }
        // 找偶数
        while (start < end && arr[end] % 2 == 0) {
            end--;
        }
        // 找到目标奇数与偶数以后, 进行互换
        int tmp = arr[start];
        arr[start] = arr[end];
        arr[end] = tmp;
    }
}

相关文章

网友评论

      本文标题:数组基数偶数位置互换

      本文链接:https://www.haomeiwen.com/subject/ipxpkhtx.html