调整数组顺序使奇数位于偶数前面。
来源:互联网 发布:java数组元素相加 编辑:程序博客网 时间:2024/04/29 19:33
题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,
运行结果如下:
所有偶数位于数组的后半部分。要求时间复杂度为O(n)。
代码如下:
public class partition {/** * @param PLA * 题目:输入一个整数数组,调整数组中数字的顺序,使得所有偶数位于数组的后半部分。要求时间复杂度为O(n)。 *//*思路: * 设置俩指针i、j,让i从头开始遍历数组,若遇到偶数,则i++,继续; * 若遇到奇数,则将i与j++值调换*/public static void main(String[] args) {// TODO Auto-generated method stubint[] que = new int[]{7,4,4,3,5,7,6,8,4,3};int length = que.length;getPartition(que,length);}private static void getPartition(int[] que, int length) {// TODO Auto-generated method stubint i=0,j=0;while(i<length&&(que[i]&1)==0)i++;//遇到偶数,继续遍历if(i==length)return;while(i<length){if((que[i]&1)==1){swap(que,i,j++);}i++;}for(int t:que){System.out.println(t);}}private static void swap(int[] que, int i, int j) {// TODO Auto-generated method stubint temp = 0;temp = que[i];que[i] = que[j];que[j] = temp;}}
运行结果如下:
7357346844
0 0
- 【数组3】-调整数组顺序使奇数位于偶数前面
- 数组3:调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面--总结
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面[
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使偶数位于奇数前面
- coding - 调整数组顺序使奇数位于偶数前面
- 字符串-01. 在字符串中查找指定字符
- 正则以空格,回车分割字符串为字符串数组
- jQuery EasyUI datagrid本地分页
- 【2014 Multi-University Training Contest 3】 The Great Pan
- C语言指针总结
- 调整数组顺序使奇数位于偶数前面。
- 集合_switch_json
- SequoiaDB-编目分区组和数据分区组
- [leetcode] Subsets
- MVC 3 Uploadify HTTP 302 error
- BUPT Summer Journey #test7 C
- poj 2182 Lost Cows(线段树经典题)
- 高精度模板
- Namespace declaration statement has to be the very first statement in the script