题解 | 调整数组顺序使奇数位于偶数前面(一)
调整数组顺序使奇数位于偶数前面(一)
https://www.nowcoder.com/practice/ef1f53ef31ca408cada5093c8780f44b
- 变量i表示待插入位置。
- j从i开始遍历,当array[j]是奇数,用tmp记录array[j]的值,防止后续移动数组元素后被覆盖。
- 用k反向遍历j到i位置,将[i,j-1]的数组元素向后移一位,将奇数tmp插入到i的位置,i++。
import java.util.*;
public class Solution {
public int[] reOrderArray (int[] array) {
// write code here
if(array.length < 2){
return array;
}
int i = 0;
for(int j = i; j < array.length; j++){
if(array[j] % 2 == 1){
int tmp = array[j];
for(int k = j; k > i; k--){
array[k] = array[k-1];
}
array[i] = tmp;
i++;
}
}
return array;
}
}
算法题汇总 文章被收录于专栏
算法题汇总。
海康威视公司福利 1125人发布