1. 题目原址
https://leetcode.com/problems/sort-array-by-parity-ii/
2. 题目描述
3. 题目大意
给定一个数组,其中奇数和偶数各一半,要求返回数组中,奇数索引下标的元素为奇数,偶数索引下标中的元素为偶数。
4. 解题思路
签到题:
两个指针,指针每次移动两个位置。
5. AC代码
class Solution {
public int[] sortArrayByParityII(int[] A) {
if(A == null || A.length == 0) return A;
int left = 0, right = A.length - 1;
for(; left < A.length && right >= 0;) {
while(left < A.length && A[left] % 2 == 0) left += 2;
while(right >= 0 && A[right] % 2 != 0) right -= 2;
if(left < A.length && right >= 0) {
int temp = A[left];
A[left] = A[right];
A[right] = temp;
}
}
return A;
}
}
6. 相似代码
【1】 905. Sort Array By Parity 题目原址:https://leetcode.com/problems/sort-array-by-parity/ 解题链接:https://blog.csdn.net/xiaojie_570/article/details/91799521