剑指offer:(13)代码的完整性: ]调整数组顺序使奇数位于偶数前面

来源:互联网 发布:杭州java应届生招聘 编辑:程序博客网 时间:2024/06/01 09:50

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

package co.com.jianzhioffer;/* * 插排思想 */public class Solution13 {     public static void reOrderArray(int array[]){     int length = array.length;     if(length<=1) return;     int p = 0;     int q = 0;     while(p<length){     if((array[p]&1)==1){//遇到第几个奇数(array[p]),就把它放到第几位(q位置),     if(p>q){     int temp = array[p];     for(int j = p;j>q;j--){     array[j] = array[j-1];     }     array[q] = temp;          }     q++;          }     p++;          }          }     public static void main(String[] args) {int[] array = {1,2,3,4,5,6,7};    reOrderArray(array);    for(int i:array){    System.out.print(i);    }}}


0 0