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

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

public class Solution
{
	public void reOrderArray(int[] array)
	{
		// 趟数
		for (int i = 0; i < array.length; i++)
		{
			// 交换次数
			for (int j = 0; j < array.length - 1 - i; j++)
			{
				if (isEven(array[j]) && !isEven(array[j + 1]))
				{
					int temp = array[j];
					array[j] = array[j + 1];
					array[j + 1] = temp;
				}
			}
		}
	}

	// 判断是否为偶数
	boolean isEven(int n)
	{
		return (n & 1) == 0;
	}

	public static void main(String[] args)
	{
		int[] array =
		{ 2, 4, 6, 1, 3, 5 };
		Solution s = new Solution();
		s.reOrderArray(array);
		for (int i = 0; i < array.length; i++)
		{
			System.out.print(array[i] + ",");
		}
	}

}


你可能感兴趣的:(剑指offer)