调整数组顺序使奇数位于偶数前面
2016-05-19 21:02
363 查看
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
思路:遍历数组,将数组中的所有奇数按顺序存在链表一中,将所有偶数按顺序存在链表二中,遍历链表一将其所存储的所有奇数值赋值给数组的前半部分,遍历链表二将其所存储的所有偶数值赋值给数组的后半部分,代码如下:
思路:遍历数组,将数组中的所有奇数按顺序存在链表一中,将所有偶数按顺序存在链表二中,遍历链表一将其所存储的所有奇数值赋值给数组的前半部分,遍历链表二将其所存储的所有偶数值赋值给数组的后半部分,代码如下:
import java.util.ArrayList; public class Solution { public void reOrderArray(int [] array) { if(array==null||array.length==0){ return; } ArrayList<Integer> oddList = new ArrayList<Integer>(); ArrayList<Integer> evenList = new ArrayList<Integer>(); for(int i:array){ if(i%2==0){ evenList.add(i); }else{ oddList.add(i); } } for(int i=0;i<oddList.size();i++){ array[i] = oddList.get(i); } for(int i=oddList.size();i<array.length;i++){ array[i] = evenList.get(i-oddList.size()); } } }
相关文章推荐
- 程序员面试笔试宝典学习记录(一)(常见面试笔试题目)
- ViewPager+Fragment((后面的包含在前面的一个Fragment中)ViewPager+Fragment)
- 用NotificationCompat创建Notification
- 将Android Activity设置成对话框式
- ElasticSearch学习_赛克蓝德2_运维中被低估的日志
- UVA579 ClockHands
- HTML之表格
- 啦啦啦啦~Django1.96---Django RequestContext
- 3.1.第九个实验--LED点阵数据手册和原理图分析
- C#连接Access与SQL Server
- halcon与C#混合编程
- hdu 1004
- L1-005. 考试座位号(C++)
- 安装202实验室打印机
- Swift print
- 已经打包好的apk不能在手机安装的问题
- HDU 2825 Wireless Password
- hdu 5667(矩阵快速幂+欧拉函数)
- UVA10250 The Other Two Trees
- [Java]HashMap源码分析