剑指offer No.13 调整数组顺序使奇数位于偶数的前面
- 2020 年 4 月 1 日
- 筆記
题目描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
public class Solution { public void reOrderArray(int [] array) { int len=array.length; int[] array1=new int[len]; int[] array2=new int[len]; int cnt1=0,cnt2=0; for(int i=0;i<len;i++){ if(array[i]%2==1){ array1[cnt1++]=array[i]; }else{ array2[cnt2++]=array[i]; } } int index=0; for(int i=0;i<cnt1;i++){ array[index++]=array1[i]; } for(int i=0;i<cnt2;i++){ array[index++]=array2[i]; } } }