給定乙個非負整數陣列 a,返回乙個陣列,在該陣列中, a 的所有偶數元素之後跟著所有奇數元素。
你可以返回滿足此條件的任何陣列作為答案。
1 <= a.length <= 5000
0 <= a[i] <= 5000
class
solution
(object):
defsortarraybyparity
(self, a)
:"""
:type a: list[int]
:rtype: list[int]
"""left,right=0,
len(a)-1
while
(left:if a[left]%2
==0:if a[right]%2
!=0: left+=
1 right-=
1else
: left+=
1elif a[left]%2
!=0:if a[right]%2
==0: a[left]
,a[right]
=a[right]
,a[left]
left+=
1 right-=
1else
: right-=
1return a
使用雙指標,將後面的偶數與前面的奇數交換。
時間複雜度:o(n)
空間複雜度:o(1)
905 按奇偶排序陣列
題目 思路分析 這道題是讓我們調整給定的a陣列裡面的元素,把偶數放在前面,奇數放在後面,其實很簡單。1.定義兩個變數l和r,l從陣列第乙個元素開始往後走,r從陣列最後乙個元素開始往左走。2.需要用到迴圈,迴圈繼續條件是l3.兩個變數分別走,有4種情況。3.1.左邊元素是偶數,右邊元素是奇數,剛好符合...
905 按奇偶排序陣列
給定乙個非負整數陣列a,返回乙個陣列,在該陣列中,a的所有偶數元素之後跟著所有奇數元素。你可以返回滿足此條件的任何陣列作為答案。示例 輸入 3,1,2,4 輸出 2,4,3,1 輸出 4,2,3,1 2,4,1,3 和 4,2,1,3 也會被接受。1 a.length 50000 a i 5000想...
905 按奇偶校驗排序陣列
給定乙個非負整數陣列a,返回乙個由a的所有偶數元素組成的陣列,後面跟a的所有奇數元素。你可以返回滿足此條件的任何陣列作為答案。示例 輸入 3,1,2,4 輸出 2,4,3,1 輸出 4,2,3,1 2,4,1,3 和 4,2,1,3 也會被接受。1 a.length 50000 a i 5000 思...