題目
難度:★☆☆☆☆
類型:數(shù)組
給定一個非負(fù)整數(shù)數(shù)組 A, A 中一半整數(shù)是奇數(shù),一半整數(shù)是偶數(shù)。
對數(shù)組進(jìn)行排序,以便當(dāng) A[i] 為奇數(shù)時,i 也是奇數(shù);當(dāng) A[i] 為偶數(shù)時, i 也是偶數(shù)。
你可以返回任何滿足上述條件的數(shù)組作為答案。
提示
2 <= A.length <= 20000
A.length % 2 == 0
0 <= A[i] <= 1000
示例
輸入:[4,2,5,7]
輸出:[4,5,2,7]
解釋:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也會被接受。
解答
我們可以準(zhǔn)備兩個數(shù)組,一個存放奇數(shù),另一個存放偶數(shù),然后構(gòu)造結(jié)果列表時次第彈出偶數(shù)和奇數(shù)列表中的元素即可。
class Solution:
def sortArrayByParityII(self, A):
"""
:param A: List[int]
:return: List[int]
"""
odd, even = [], []
for num in A:
if num % 2:
odd.append(num)
else:
even.append(num)
res = []
while odd and even:
res.append(even.pop())
res.append(odd.pop())
return res
如有疑問或建議,歡迎評論區(qū)留言~