第三十六天:力扣第922题,按奇偶排序数组 II
地址:leetcode-cn.com/problems/so…
思路:双指针,当有一个奇数位和偶数位位置都不对的时候,互换位置。
var sortArrayByParityII = function(A) {
let flag = 0;
let falg = 0;
for(let left = 0,right = 1;left < A.length - 1&&right < A.length;)
{
A[left]%2 !== 0 ? flag = 1 : left += 2;
A[right]%2 === 0 ? falg = 1 : right += 2;
if(falg === 1&&flag === 1)
{
[A[left],A[right]] = [A[right],A[left]]
flag = 0;
falg = 0;
left += 2;
right += 2;
}
}
return A;
};
执行用时:116 ms, 在所有 JavaScript 提交中击败了92.39%的用户
内存消耗:42.6 MB, 在所有 JavaScript 提交中击败了68.21%的用户