题解 | 调整数组顺序使奇数位于偶数前面
调整数组顺序使奇数位于偶数前面
http://www.nowcoder.com/practice/ef1f53ef31ca408cada5093c8780f44b
解法一:插入排序思想
记录已经是奇数的位置下标(视作为有序区域),然后向后遍历,一经发现是奇数则进行“插入排序”,然后有序区下标加1。
Java参考代码:
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param array int整型一维数组
* @return int整型一维数组
*/
//使用插入排序的思想
public int[] reOrderArray (int[] array) {
// 首先是对数值长度进行特判
if(array==null||array.length==0) return array;
//记录已经是奇数的位置
int j=0;
int temp = 0;
for(int i =0;i<array.length;i++){
temp = array[i];
//如果该值为偶数
if(array[i]%2==0){
continue;
}else{//该值为奇数
int k =i;
while(k>j){
//这区间整体向后移动一位
array[k] = array[k-1];
k--;
}
//移位
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
小白专属-牛客题解 文章被收录于专栏
专注于牛客平台编程题题解,文字+图解。内容很细,小白友好系列