剑指offer之【调整数组顺序使奇数位于偶数前面】
题目要求:
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
解题方法:
方法一:时间复杂度O(n^2)
最容易想到:从头扫描这个数组,每碰到一个偶数时,拿出这个数字,并把位于这个数字后面的所有数字往前挪动一位。挪完之后在数组的末尾有一个空位,这时把该偶数放入这个空位;
方法二:时间复杂度O(n)
重新建立一个向量,然后进行两次扫描:第一次扫描奇数,第二次扫描偶数,完毕,不废话,直接上代码:
1 class Solution{ 2 public: 3 void reOrderArray(vector<int> &array){ 4 int len = array.size(); 5 vector<int> vec(array.begin(),array.end()); 6 int l = 0; 7 for(int x: vec){ 8 if(x%2==1){ 9 array[l++] = x; 10 } 11 } 12 for(int y : vec){ 13 if(y%2 == 0){ 14 array[l++] = y; 15 } 16 } 17 } 18 };
转载于:https://www.cnblogs.com/wangshujing/p/6934629.html
剑指offer之【调整数组顺序使奇数位于偶数前面】相关推荐
- 《LeetCode力扣练习》剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 Java
<LeetCode力扣练习>剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 Java 一.资源 题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组 ...
- 【LeetCode】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
[LeetCode]剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 文章目录 [LeetCode]剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 一.双指针 一.双指针 解题思路: ...
- 剑指Offer #13 调整数组顺序使奇数位于偶数前面 | 图文详解
题目来源:牛客网-剑指Offer专题 题目地址:调整数组顺序使奇数位于偶数前面 题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的 ...
- 【双100%解法】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
立志用最少的代码做最高效的表达 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 示例: 输入:nums = [1,2,3,4] 输 ...
- 《剑指offer》-- 调整数组顺序使奇数位于偶数前面、顺时针打印矩阵、数字在排序数组中出现的次数
一.调整数组顺序使奇数位于偶数前面: 1.题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之 ...
- Leetcode 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 (每日一题 20210917)
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分.示例:输入:nums = [1,2,3,4] 输出:[1,3,2,4] 注:[3,1 ...
- 《剑指offer》调整数组顺序使奇数位于偶数前面
题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 解法一:用两个lis ...
- 《剑指Offer》 调整数组顺序使奇数位于偶数前面
题目描述: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 思路: 先取a ...
- 【剑指offer】调整数组顺序使奇数位于偶数前面
一.题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 二.思路: 用 ...
- 剑指offer——21.调整数组顺序使奇数位于偶数前面
题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 知识点: 保证相对位置 ...
最新文章
- java 取字段_java – 获取字段的名称
- eclipse运行 Maven Test命令时控制台输出乱码的解决办法
- F5 云应用服务促进公共云、私有云及混合云应用部署
- UVa 1607 (二分) Gates
- 将用int型存储的时间转换成time时间格式笔记
- 为Java + STANDARD值引入Cucumber
- 马逊s3云存储接口_当对象存储“湖”有了强一致性
- postfixadmin 导入数据库出错 ERROR 1062 (23000) at line 29
- HDU-5877-Weak Pair(树状数组+离散化+dfs)
- 【BZOJ4008】【HNOI2015】亚瑟王 [期望DP]
- mysql 无符号 负数_mysql下有符号数和无符号数的相关问题
- python实现项目的复制_python实现复制大量文件功能
- 三维点云学习(2)五种算法比较
- python培训价目表-参加python培训要多少钱?
- jpeglib的jpeg_finish_compress函数疑似越界
- Linux内核分析:跟踪分析Linux内核的启动过程
- CSU 2124智慧树(建图+BFS)
- UE4_BIM替换材质处理流程
- 初学者用什么数位板好,手绘板选择注意什么?
- .Net框架搭建之2、SQL Server MEF依赖注入 MVC Repository框架
热门文章
- python json有什么用_为什么要学习用Python解析JSON数据?
- 栈和队列都是什么结构_数据结构与算法之初识栈与队列
- 路由策略原理及配置请查收......
- 云原生体系下 Serverless 弹性探索与实践
- Serverless 的喧哗与骚动(一)附Serverless行业发展回顾
- sqlite+php+函数大全,PHP SQLite SQLite 函数_编程学问网
- kaggle和colab入门
- 配置apache2目录
- c语言一位共阳数码管编程,求一个共阳四位数码管滚动显示1234的程序
- python常用内置函数汇总_太全了!Python3常用内置函数总结