调整数组顺序使奇数位于偶数前面
来源:互联网 发布:vb mac 编辑:程序博客网 时间:2024/05/29 23:48
思路:
利用两个分别指向数组头尾的指针。假如:first指向数组的第一个元素,end指针指向数组的最后一个元素。向后移动first指针直到它指向偶数,向前移动end指针直到它指向奇数。交换两个指针指向的内容。继续移动,符合条件就继续交换。直到end指针在first指针前,表明所有的奇数全都位于偶数的前面。
void ReOrderArray(int* arr, int len){if (arr == NULL || len <= 0)return;int* first = &arr[0];int* end = &arr[len - 1];while (first < end){while (first < end && *first % 2 != 0)//移动,直到遇到偶数{first++;}while (first < end && *end % 2 == 0){end--;}swap(*first, *end);}}void Test(){int arr[] = { 1, 2, 3,4 ,3,4, 5, 6, 7, 8, 9 };ReOrderArray(arr, sizeof(arr) / sizeof(arr[0]));for (size_t i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i){cout << arr[i] << " ";}cout << endl;}int main(){Test();system("pause");return 0;}
0 0
- 【数组3】-调整数组顺序使奇数位于偶数前面
- 数组3:调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面--总结
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面[
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使奇数位于偶数前面
- 调整数组顺序使偶数位于奇数前面
- coding - 调整数组顺序使奇数位于偶数前面
- IntelliJ IDEA 入门常用操作
- vs2010 与MATLAB2015b(64位)联合处理
- C++单例
- 计算一个数的二进制表示中1的个数
- Java面试题之:JDK和JRE的区别?
- 调整数组顺序使奇数位于偶数前面
- docker搭建gitlab
- 54-套接字选项(SO_LINGER)
- Eclipse中java注释模板
- CSU-1779(暴力)
- Spring 面向切面编程AOP
- Charles 抓包工具使用方法
- c++之Vector(动态 )
- UVa 714