美文网首页
LeetCode-按奇偶检验排序数组

LeetCode-按奇偶检验排序数组

作者: G_dalx | 来源:发表于2018-09-19 22:04 被阅读0次

    给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。
    你可以返回满足此条件的任何数组作为答案。

    示例:

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

    提示:
    1 <= A.length <= 5000
    0 <= A[i] <= 5000

    思路:
    新建一个和A同样长度的数组B
    建立两个标识符
    第一个标识符n在数组B的开头
    第二个标识符在m数组B的结尾
    判断是否为偶数,是偶数从B的开头开始添加(n++)
    判断是否为奇数,是奇数从B的末尾开始添加(m--)
    return B

    代码:

    class Solution {
        public int[] sortArrayByParity(int[] A) {
            int n = A.length;
            int i = 0, j = n - 1;
            int[] tmp = new int[n];
            for(int k = 0; k < n; k++){
                if(A[k] % 2 == 0){
                    tmp[i++] = A[k];
                }else{
                    tmp[j--] = A[k];
                } 
            }
            return tmp;
        }
    }
    

    相关文章

      网友评论

          本文标题:LeetCode-按奇偶检验排序数组

          本文链接:https://www.haomeiwen.com/subject/rxuwnftx.html