。。。剑指Offer之——调整数组顺序使奇数位于偶数前面。。。
1 public void reOrderArray(int[] array) { 2 // 如果输入的数组为空,则直接返回return 3 // 如果输入的数组内容为空,则直接返回return 4 if (array == null || array.length == 0) { 5 return; 6 } 7 // 另外重新开辟一个新的数组,大小和原来是相同的 8 int[] newArray = new int[array.length]; 9 int j = 0; 10 // 遍历原数组,如果是奇数,则放入新数组当中 11 for (int i = 0; i < array.length; i++) { 12 if (array[i] % 2 == 1) { 13 newArray[j++] = array[i]; 14 } 15 } 16 // 遍历原数组,如果是偶数,则放入新数组当中 17 for (int i = 0; i < array.length; i++) { 18 if (array[i] % 2 == 0) { 19 newArray[j++] = array[i]; 20 } 21 } 22 // 这边很重要,"牛客网"上提交代码时,不能修改原来引用对象 23 // 如果修改了原来的引用对象(如 array = newArray,newArra是一个新对象), 24 // 则提交代码不通过,只能将原对象的内容修改掉 25 for (int i = 0; i < array.length; i++) { 26 array[i] = newArray[i]; 27 } 28 }

更多精彩