922. 按奇偶排序数组 II
题目链接:https://leetcode-cn.com/problems/sort-array-by-parity-ii/
解题思路
建立一个新的数组ans
并为其设定两个指针k,j
分别是其偶数和奇数项索引,对A
中的每个元素进行判定,如果是偶数则存入索引为k
的位置,如果是奇数则存入索引为j
的位置。
AC代码如下:
class Solution:
def sortArrayByParityII(self, A: List[int]) -> List[int]:
k,j = 0, 1 # 偶数索引和奇数索引
ans = list(A) # 复制数组(不共享指针),用list,否则会共享内存
for x in A:
if x%2==0:
ans[k]=x
k+=2
else:
ans[j]=x
j+=2
return ans