您的位置:首页 > Web前端

剑指offer第14题:调整数组顺序使奇数位于偶数前面

2016-07-31 23:58 411 查看
输入:一个整数数组

输出:使奇数位于偶数前面

思路:用起始两个指针,第一个指针向后移动,第二个指针向前移动,当第一个指针指向偶数第二个指针指向奇数将二者交换,直到两个指针相遇

public class ReorderOddEven{
//    剑指offer第14题
public void reorderOddEven(int[] array){
int start = 0;
int end = array.length - 1;
while (start < end){
while ((array[start] & 1) == 1){
start ++;
}
while ((array[end] & 1) == 0){
end -- ;
}
swap(array,start,end);
}

}

private void swap(int[] array, int start, int end) {
int temp = array[start];
array[start] = array[end];
array[end] = temp;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息