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;
        }
    }
    
  • 相关阅读:
    HDU 1269 迷宫城堡 tarjan算法求强连通分量
    hrbust 1721 A + B = 0 map的应用
    关于vis标记
    poj 1703
    poj1961 kmp
    acm poj1260 dp
    矩阵链乘 hrbust 1600
    单源最短路径 hdu 2066
    最小生成树
    多维背包 hrbudt 1335 算法与追MM
  • 原文地址:https://www.cnblogs.com/xiehang/p/11267190.html
Copyright © 2011-2022 走看看