给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。

你可以返回满足此条件的任何数组作为答案。

示例:

输入:[3,1,2,4]
输出:[2,4,3,1]
输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。

提示:

  1. 1 <= A.length <= 5000
  2. 0 <= A[i] <= 5000

思路:用i指向0,j指向数组末尾

如果A[i]是奇数,A[j]是偶数,就交换

A[i]是偶数就i++;A[j]是奇数就j--

 1 int* sortArrayByParity(int* A, int ASize, int* returnSize)
 2 {
 3     int i=0,j=ASize-1;
 4     *returnSize=ASize;
 5     while(i<j)
 6     {
 7         if(A[i]%2==1&&A[j]%2==0)
 8         {
 9             int c=A[i];
10             A[i]=A[j];
11             A[j]=c;
12             i++,j--;
13         }
14         else if(A[i]%2==0)
15             i++;
16         else if(A[j]%2==1)
17             j--;
18     }
19
20     return A;
21 }

View Code

转载于:https://www.cnblogs.com/tijie/p/9949130.html

Leetcode 905. 按奇偶排序数组相关推荐

  1. Python Leetcode(905.按奇偶排序数组)

    Python Leetcode(905.按奇偶排序数组) 给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素. 你可以返回满足此条件的任何数组作为答案. 示例 ...

  2. 905. 按奇偶排序数组

    1// 905. 按奇偶排序数组 2/** 3 * @param {number[]} A 4 * @return {number[]} 5 */ 6var sortArrayByParity = f ...

  3. LeetCode:922. 按奇偶排序数组 II

    922. 按奇偶排序数组 II 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 维护俩个标记即可,每次让标记加2 源码: int* sortArrayByParityII(int* A, i ...

  4. leetcode 922. 按奇偶排序数组 II(双指针)

    给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数. 对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数:当 A[i] 为偶数时, i 也是偶数. 你可以返回任何满足上述条件的数组 ...

  5. int型 判断奇偶_905. 按奇偶排序数组

    905. 按奇偶排序数组 Loading...​leetcode-cn.com 给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素. 你可以返回满足此条件的 ...

  6. 922. 按奇偶排序数组 II

    链接:922. 按奇偶排序数组 II 题解: class Solution {public:vector<int> sortArrayByParityII(vector<int> ...

  7. js 数组按奇偶拆分_力扣:按奇偶排序数组js

    给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素. 你可以返回满足此条件的任何数组作为答案. 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输 ...

  8. 刻意练习:LeetCode实战 -- Task02. 删除排序数组中的重复项

    背景 本篇图文是LSGO软件技术团队组织的 第二期基础算法(Leetcode)刻意练习训练营 的打卡任务.本期训练营采用分类别练习的模式,即选择了五个知识点(数组.链表.字符串.树.贪心算法),每个知 ...

  9. LeetCode实战:删除排序数组中的重复项

    题目英文 Given a sorted array nums, remove the duplicates in-place such that each element appear only on ...

最新文章

  1. Solaris 操作
  2. 事务(ACID)、并发一致性问题(丢失修改、读脏数据、不可重复读、幻影读)、封锁(封锁粒度、类型、协议、MySQL 隐式与显示锁定)
  3. [java设计模式简记] 观察者模式(Observer-Pattern)
  4. Nginx—— Rewrite规则的使用
  5. 数据结构——交换左右子树
  6. 7-21 求特殊方程的正整数解 (15 分)
  7. 感知机原理及代码实现小结
  8. 在苹果mac中如何使用 Word 画底线、直线、虚线?
  9. mysql 触发器 sql日志_mysql日志触发器实现代码
  10. android中图标怎么改,android的软件图标怎么改
  11. 推荐一款基于.Net Core开发简约漂亮的 WPF UI库
  12. 内网端口映射工具之80端口映射和全端口映射及辅助发布网站应用
  13. C++ 资源大全中文版
  14. apache kafka 简介
  15. 乐山市计算机学校龚老师介绍,情系困难教师,市教育局领导与学校领导慰问暖人心...
  16. MySQL设计与优化
  17. 用计算机打字怎么打括号,键盘的输入问题
  18. 以太坊智能合约部署——一个简单的投票系统
  19. HTMLParser 使用详解
  20. Zynq-Linux移植学习笔记

热门文章

  1. java学习笔记-set
  2. 正则表达式(开源框架)
  3. ACM之常见的(C++版)问题解析
  4. 新配windows服务器及上边功能的试用体会
  5. 《Python核心编程》第二版第36页第二章练习 续一 -Python核心编程答案-自己做的-...
  6. ESLG.CommonUtility.NHibernateHelper的类型初始值设定项引发异常
  7. SQL Server中的几个方法和Transact SQL 常用语句以及函数[个人推荐]
  8. 2017年深度学习十大趋势预测
  9. 【Caffe实践】基于Caffe的人脸检测实现
  10. redis-rdb-tool 工具介绍