922. 按奇偶排序数组 II
Posted rencoo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了922. 按奇偶排序数组 II相关的知识,希望对你有一定的参考价值。
1/**
2 * @param {number[]} A
3 * @return {number[]}
4 */
5//
6var sortArrayByParityII = function(A) {
7 let even = A.filter(value => value % 2 === 0);
8 let odd = A.filter(value => value % 2 === 1);
9
10 for (let i = 0, l = A.length; i < l; i++) {
11 if(i%2 === 0) {
12 A[i] = even.shift();
13 } else {
14 A[i] = odd.shift();
15 }
16 }
17
18 return A;
19};
20
21// 解法二
22var sortArrayByParityII = function(A) {
23 let result = Array(A.length);
24 let odd = 1, even = 0;
25 A.forEach(el => {
26 if (el % 2 === 0) { // 偶数
27 result[even] = el;
28 even += 2
29 } else {
30 result[odd] = el;
31 odd += 2
32 }
33 });
34
35 return result
36};
37
38ensureEqual(sortArrayByParityII([4,2,5,7]), [4,5,2,7], ‘test 1‘);
以上是关于922. 按奇偶排序数组 II的主要内容,如果未能解决你的问题,请参考以下文章