企业官方网站案例/seo引擎优化是做什么的
注:博文转载自:https://blog.csdn.net/tanjie_123/article/details/53055723
##一、问题描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
##二、算法分析
给定一个数组array
目标:调整数组中元素顺序,使得奇数在前,偶数在后,同时奇数区和偶数区元素相对于原数组顺序不变
例如,array = {1,2,3,4,5,6}
调整后,array’ = {1,3,4,2,4,6}
可以采用类似于冒泡法思想求解,如果相邻两个元素是前偶后奇则交换顺序,经过多趟调整,可使整个数组为前奇后偶,又因为冒泡排序具有稳定性,因此调整后的奇数区和偶数区相对原数组顺序不变
##三、代码实现(Java)
public void reOrderArray(int [] array) { /** * 算法思路: * 采用冒泡法思想,只要遇到前偶后奇则交换 */ int temp; for(int i=0;i<array.length; i++){ for(int j=0; j<array.length-i-1; j++){ if(array[j]%2==0 && array[j+1]%2==1){ temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } }