zoukankan      html  css  js  c++  java
  • LeetCode 905. Sort Array By Parity 按奇偶校验排列数组

    题目

    Given an array A of non-negative integers, return an array consisting of all the even elements of A, followed by all the odd elements of A.

    You may return any answer array that satisfies this condition.

    Example 1:

    Input: [3,1,2,4]
    Output: [2,4,3,1]
    The outputs [4,2,3,1], [2,4,1,3], and [4,2,1,3] would also be accepted.
    

    Note:

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

    题解

    题目大意:数组排序,偶数放前,奇数在后,偶数的数之间不用管顺序,奇数的数之间也不用管顺序
    思路:建两个list,一个放偶数,一个放奇数,最后将两个list合并,转化为数组返回

    class Solution {
        public int[] sortArrayByParity(int[] A) {
            ArrayList<Integer> oddList = new ArrayList<>();//存放奇数
            ArrayList<Integer> evenList = new ArrayList<>();//存放偶数
            for (int a : A) {
                if (a % 2 == 0) evenList.add(a);
                else oddList.add(a);
            }
            evenList.addAll(oddList);
            int[] arr = new int[A.length];
            for (int i = 0; i < A.length; i ++){
                arr[i] = evenList.get(i);
            }
            return arr;
        }
    }
    
  • 相关阅读:
    CSUOJ 1081 集训队分组
    HDU 1865 More is Better
    HDU 1325 Is It A Tree?
    HDU 1272 小希的迷宫
    CSUOJ 1217 奇数个的那个数
    CSUOJ 1010 Water Drinking
    CSUOJ 1162 病毒
    CodeForces 295B
    CodeForces 20C
    SPOJ MULTQ3
  • 原文地址:https://www.cnblogs.com/xiehang/p/11267190.html
Copyright © 2011-2022 走看看