题目:调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。

示例:

输入:nums = [1,2,3,4]
输出:[1,3,2,4]
注:[3,1,2,4] 也是正确的答案之一。

提示:

1 <= nums.length <= 50000
1 <= nums[i] <= 10000

解题:

class Solution {
public:vector<int> exchange(vector<int>& nums) {if(nums.size()==0) return nums;int l = 0, r = nums.size() - 1;while (l <= r) {while (l <= r && nums[l] % 2 == 1) l++;while (l <= r && nums[r] % 2 == 0) r--;if (l < r) swap(nums[l], nums[r]);}return nums;}
};

剑指offer:面试题21. 调整数组顺序使奇数位于偶数前面相关推荐

  1. 剑指Offer - 面试题21. 调整数组顺序使奇数位于偶数前面(双指针,原地算法)

    1. 题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 示例: 输入:nums = [1,2,3,4] 输出:[1,3,2,4 ...

  2. 剑指offer面试题21. 调整数组顺序使奇数位于偶数前面(双指针)

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 思路 详见链接 代码 class Solution:def exchan ...

  3. 剑指offer面试题[14]-调整数组顺序使奇数位于偶数前面

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 分析: 这个题目的最 ...

  4. java 取数组的前90位,LeetCode 面试题21. 调整数组顺序使奇数位于偶数前面

    LeetCode 面试题21. 调整数组顺序使奇数位于偶数前面 题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 示例: 输入 ...

  5. 【剑指offer-Java版】14调整数组顺序使奇数位于偶数前面

    调整数组顺序使奇数位于偶数前面:遍历交换 特殊输入: 1) 只有一个数字 2) 全奇数或者全偶数 3) 空指针 4) 正常输入 考虑到扩展性,C++里面使用了函数指针来实现,但是对于java,可以采用 ...

  6. 《LeetCode力扣练习》剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 Java

    <LeetCode力扣练习>剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 Java 一.资源 题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组 ...

  7. 【LeetCode】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

    [LeetCode]剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 文章目录 [LeetCode]剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 一.双指针 一.双指针 解题思路: ...

  8. LeetCode-剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

    剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 思路一:使用快慢双指针 1: i找偶数找到了,继续往下执行,找不到i++ 2:j找奇数,找到了继续往下执行,找不到j– 3:最后交换 clas ...

  9. 【双100%解法】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

    立志用最少的代码做最高效的表达 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 示例: 输入:nums = [1,2,3,4] 输 ...

最新文章

  1. 从传感器到算法原理,机器人、视觉避障尽在此文
  2. 虚函数(virtual)可以是内联函数(inline)吗?
  3. [spark程序]统计人口平均年龄(本地文件)(详细过程)
  4. java 泛型参数写法_参数化类型——Java泛型
  5. 为什么有人说Java开发不再吃香
  6. check_mysql 脚本_如何使用myisamchk和mysqlcheck工具快速修复损坏的MySQL数据库文件
  7. 二叉树的深度(剑指 Offer 55 - I)
  8. Google Chrome抓包分析详解
  9. 如何禁止某个程序修改计算机,电脑如何禁止某个程序运行?
  10. Jmeter性能测试报告模板
  11. php seo技巧,十个对排名最有效的SEO​技巧
  12. jpg转bmpbmp转jpg
  13. 年终礼品交换潮iPhone、iPad最抢手
  14. tailwind css的使用
  15. CocoaLumberjack的ios应用开发使用指南
  16. vue/multi-word-component-names报错处理
  17. 鸿蒙iot系统,面子叫做「鸿蒙」,里子是华为的 IoT 大局
  18. 【迭代式开发】v1架构设计文档——大数据开发实战项目(三)
  19. 四月中旬了,都快要五月份了
  20. andriod APP

热门文章

  1. 关于acm的新手一些问题
  2. 牛客~~打篮球~~~模拟水题
  3. Log4Net的控制台,WinForm,WebApplication使用
  4. Linux启动过程分析
  5. 在Ubuntu下构建Bullet以及执行Bullet的样例程序
  6. WinDbg加载不同版本CLR
  7. 合并两个有序数组(重新开始)
  8. [导入]C#中实现Socket端口复用
  9. SQL2000联机丛书:使用和维护数据仓库
  10. element ui 图片控件 排序_JAVA全栈面试前端基础之四 Vue+Element框架快速开发