题目描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
方法一:
前偶后奇数就交换
1 public class Solution { 2 public void reOrderArray(int[] array) { 3 4 for (int i = 0; i < array.length; i++) { 5 6 for (int j = array.length - 1; j > i; j--) { 7 8 if (array[j] % 2 == 1 && array[j - 1] % 2 == 0) { 9 int temp = array[j]; 10 array[j] = array[j - 1]; 11 array[j - 1] = temp; 12 13 } 14 15 } 16 17 } 18 19 } 20 }
方法二:
新建数组的方式(这里不再列代码)
本文介绍了一种在保持奇数和偶数内部顺序不变的情况下,将整数数组中的所有奇数移动到前面,所有偶数移动到后面的算法。提供了两种实现方法:一是通过遍历数组并交换元素;二是使用额外的数组进行重新排列。
454

被折叠的 条评论
为什么被折叠?



