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

    xiaoxiao2021-03-25  114

    题目:

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

    思路:

    1.声明变量move来记录遇到过的偶数个数

    2.遇到偶数时move++

    3.遇到奇数从当前开始依次交换位置move次

    代码:

    class Solution { public int[] reOrderArray(int[] array) { // write code here int move = 0; for(int i=0; i<array.Length; i++) { if(array[i]%2 == 0) { move++; } else { for(int j=1; j<=move; j++) { int temp = array[i - j +1]; array[i-j+1] = array[i-j]; array[i-j] = temp; } } } return array; } }

    转载请注明原文地址: https://ju.6miu.com/read-14825.html

    最新回复(0)