剑指offer:调整数组顺序使奇数位于偶数前面
2017-03-13 20:58
369 查看
题目描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。class Solution { public: //复杂度为O(n^2) void reOrderArray(vector<int> &array) { int p=0; int size = array.size(); for(int i=0; i<size; i++) { if(array[i]&0x01) { int temp = array[i]; while(i>p) { array[i] = array[i-1]; --i; } array[p] = temp; ++p; } } } }; //复杂度O(n)空间复杂度为O(n)的算法:新建一个数组 //第一遍扫描并push奇数,第二遍扫描并push偶数,再替换原来的数组
相关文章推荐
- 【剑指offer】13调整数组顺序使奇数位于偶数前面
- 【剑指offer-Java版】14调整数组顺序使奇数位于偶数前面
- 剑指Offer——调整数组顺序使奇数位于偶数前面
- 剑指offer13 调整数组顺序使奇数位于偶数前面
- 剑指offer-14:调整数组顺序,奇数位于偶数前面
- 剑指offer--调整数组顺序使奇数位于偶数前面
- 剑指offer-调整数组顺序使奇数位于偶数前面
- 剑指offer 调整数组顺序使奇数位于偶数前面 @python
- 剑指offer 3.3 代码的完整性4-在O(n)时间内调整数组顺序,使奇数位于偶数前面
- 剑指offer之调整数组顺序使奇数位于偶数前面
- 【剑指offer——JAVA实现】调整数组顺序使奇数位于偶数前面
- 剑指offer 调整数组顺序使奇数位于偶数前面
- 剑指offer面试题14: 调整数组顺序使奇数位于偶数前面
- 剑指offer刷题之c++实现的调整数组顺序使奇数位于偶数前面
- 剑指offer 14题 【代码的完整性】调整数组顺序使奇数位于偶数前面
- 剑指offer面试题14-调整数组顺序使奇数位于偶数前面
- 剑指offer--调整数组顺序使奇数位于偶数前面
- 剑指offer——调整数组顺序使奇数位于偶数前面
- 剑指offer_数组---调整数组顺序使奇数位于偶数前面
- 剑指offer面试题[14]-调整数组顺序使奇数位于偶数前面