博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面试题14 调整数组顺序使奇数位于偶数前面
阅读量:4961 次
发布时间:2019-06-12

本文共 1395 字,大约阅读时间需要 4 分钟。

题目描述

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
 
1 class Solution { 2 public: 3     void reOrderArray(vector
&array) { 4 if (array.size() == 0) 5 return; 6 int i = 0, j = array.size() - 1; 7 vector
v1, v2; 8 9 for (int i = 0; i < array.size(); i++){10 if (array[i] % 2 != 0)11 v1.push_back(array[i]);12 else13 v2.push_back(array[i]);14 }15 int k = 0;16 for (int j = 0; j < v1.size(); j++){17 array[k] = v1[j];18 k++;19 }20 for (int j = 0; j < v2.size(); j++){21 array[k] = v2[j];22 k++;23 }24 }25 };

 

 
1 class Solution { 2 public: 3     void reOrderArray(vector
&array) { 4 if (array.size() == 0) 5 return; 6 int i = 0, j = array.size() - 1; 7 while (j > i){ 8 if (array[i] % 2 != 0) 9 i++;10 if (array[j] % 2 == 0)11 j--;12 if (array[i] % 2 == 0 && array[j] % 2 != 0){13 int temp = array[i];14 array[i] = array[j];15 array[j] = temp;16 }17 }18 }19 };

 

转载于:https://www.cnblogs.com/wanderingzj/p/5352509.html

你可能感兴趣的文章
access remote libvirtd
查看>>
(4) Orchard 开发之 Page 的信息存在哪?
查看>>
ASP.NET中 GridView(网格视图)的使用前台绑定
查看>>
深入了解Oracle ASM(二):ASM File number 1 文件目录
查看>>
Boosting(提升方法)之AdaBoost
查看>>
Binding object to winForm controller through VS2010 Designer(通过VS2010设计器将对象绑定到winForm控件上)...
查看>>
Spring Boot实战笔记(二)-- Spring常用配置(Scope、Spring EL和资源调用)
查看>>
SwaggerUI+SpringMVC——构建RestFul API的可视化界面
查看>>
springmvc怎么在启动时自己执行一个线程
查看>>
C# 通知机制 IObserver<T> 和 IObservable<T>
查看>>
Code of Conduct by jsFoundation
查看>>
C#小练习ⅲ
查看>>
电源防反接保护电路
查看>>
arraylist
查看>>
zoj 1649 Rescue (BFS)(转载)
查看>>
2124: 等差子序列 - BZOJ
查看>>
字符串匹配算法综述
查看>>
Linux centosVMware shell 管道符和作业控制、shell变量、环境变量配置文件
查看>>
【设计模式】工厂模式
查看>>
两个表格中数据不用是一一对应关系--来筛选不同数据,或者相同数据
查看>>