调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

 

/**
 * 思路:使用冒泡排序 两两相邻的所有数都可以遍历到  将第一个数字和后面的数字依次比较
 * 当一个数为偶数时 如果此时他后面的数位偶数 那么他们的相对位置不变,
 * 而如果他后面的是奇数,那么相对位置需要改变
 */

function reOrderArray(array){
    if(array.length==0){
        return [];
    }

    for(var i=0;i<array.length;i++){
        for(var j=1;j<array.length;j++){
            if(array[j]%2==0 && array[j+1]%2!=0){
                var temp=array[j];
                array[j]=array[j+1];
                array[j+1]=temp;
            }
        }
    }

    return array;
}

 

posted @ 2018-09-06 23:24  mino1996  阅读(72)  评论(0编辑  收藏  举报