剑指offer之调整数组顺序使奇数位于偶数前面
来源:互联网 发布:免费数据网站 编辑:程序博客网 时间:2024/05/29 11:15
题目描述:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
思路:类似选择排序,遍历每个元素,遇到奇数,就从这个奇数开始向前遍历,使其前面的偶数向后覆盖,在遍历过程中直到遇上奇数或者到达第一个元素,结束遍历,最后将奇数放入正确位置
代码:
public class Main { public static void main(String[] args) { int arr[] = {3,1,5,7,2,4,9,6,10,8,11,11,13,14,15,12}; sort(arr); for(int n:arr){ System.out.print(n+" "); } } public static void sort(int[] arr){ for(int i=0;i<arr.length;i++){ int temp=arr[i]; if(arr[i]%2==1){ int j=i-1; while(j>=0&&arr[j]%2==0){ arr[j+1]=arr[j]; j--; } arr[j+1]=temp; } } }}
阅读全文
0 0
- 剑指offer:调整数组顺序使奇数位于偶数前面
- 剑指offer--调整数组顺序使奇数位于偶数前面
- 剑指offer 调整数组顺序使奇数位于偶数前面
- 《剑指offer》调整数组顺序使奇数位于偶数前面
- 剑指 offer:调整数组顺序使奇数位于偶数前面
- 剑指offer-调整数组顺序使奇数位于偶数前面
- 剑指offer 调整数组顺序使奇数位于偶数前面
- 剑指offer-调整数组顺序使奇数位于偶数前面
- 剑指offer 调整数组顺序使奇数位于偶数前面
- 【剑指offer】调整数组顺序使奇数位于偶数前面
- [剑指offer]调整数组顺序使奇数位于偶数前面
- 剑指offer:调整数组顺序使奇数位于偶数前面
- 【剑指offer】调整数组顺序使奇数位于偶数前面
- 剑指offer|调整数组顺序使奇数位于偶数前面
- 《剑指offer》调整数组顺序使奇数位于偶数前面
- 剑指Offer:调整数组顺序使奇数位于偶数前面
- 剑指offer - 调整数组顺序使奇数位于偶数前面
- 【剑指offer】调整数组顺序使奇数位于偶数前面
- install texlive-full on ubuntu
- 172. Factorial Trailing Zeroes
- RAC初识--003--RACRACDisposable
- springmvc学习笔记
- 【图像处理】MATLAB:退化函数及多种复原方法
- 剑指offer之调整数组顺序使奇数位于偶数前面
- Linux命令行大全总结(一)
- RAC初识--004--RACSubject
- readelf命令和ELF文件详解
- iOS11之后刷新tableview会出现漂移的现象解决办法
- VS bower配置
- c语言实现单向循环链表
- mysql优化-explain使用
- UDP的结构和传输原理