调整数组顺序使得奇数位于偶数前面
来源:互联网 发布:开心消消乐数据同步 编辑:程序博客网 时间:2024/05/18 13:43
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
思路:使用两个指针,前边的指针寻找偶数,后边的指针寻找奇数
若两个指针都找到了目标,就交换两个值,进行交换的时候,需要移动元素,将寻找到的偶数和奇数之间的变量往后移动,再把元素奇数放在第一个位置上。
指针越界则结束遍历。
public class Solution { public void reOrderArray(int [] array) { int begin = 0; //前方指针,寻找的是偶数 int end = 0; //后方指针,寻找的奇数 while(end < array.length){ //寻找偶数 while(begin < array.length && array[begin] % 2 == 1) begin++; //奇数从偶数的下一个位置开始 end = begin; //寻找偶数之后的奇数 while(end < array.length && array[end] % 2 == 0) end++; //交换 if(begin < array.length && end < array.length){ int temp = array[end]; for(int i = end-1; i >= begin ; i--){ array[i+1] = array[i]; } array[begin] = temp; begin++; } } }}
阅读全文
0 0
- 调整数组顺序使得奇数位于偶数前面
- 调整数组顺序使得奇数位于偶数前面
- 调整数组顺序,使得奇数总位于偶数前面
- 调整数组顺序使得奇数位于偶数前面
- 【剑指offer】调整数组顺序使得奇数位于偶数前面
- 调整数组顺序使得奇数位于偶数前面
- 剑指offer_调整数组顺序使得奇数位于偶数前面
- 调整数组顺序使得奇数位于偶数前面
- 调整数组顺序使得奇数位于偶数前面
- 调整数组顺序使得奇数位于偶数前面,且奇数与奇数,偶数与偶数之间的位置相对不变
- 输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于偶数前面
- 调整数组的顺序使得奇数位于偶数的前面(剑指offer14)
- 剑指offer_14(调整数组顺序使得奇数位于偶数前面)
- #剑指offer--(15)调整数组顺序使得奇数位于偶数前面
- 【数组3】-调整数组顺序使奇数位于偶数前面
- 数组3:调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- Alpha、Beta、RC、GA版本的区别
- scp命令使用说明
- Spring IOC
- java 获取数据类型getClass()
- 揭秘互联网空手套白狼的灰色项目
- 调整数组顺序使得奇数位于偶数前面
- HTTP 协议中 URI 和 URL 有什么区别
- 自定义View (二)---onMeasure
- 求n个数中最小的K个数。
- 天天学Linux命令27--用SecureCRT来上传和下载文件
- ICMP消息的作用和控制
- 无限轮播图的布局和小圆点的实现
- 用Golang处理每分钟百万级请求
- 网络编程相关文章